2015-02-02 6 views
6

미해결 모두 javax/메일/MessagingException의 :java.lang.NoClassDefFoundError가 : 내 클래스 경로에 javax.mail 항아리를 추가하기 위해 노력하고있어하지만 난이 오류가 얻을

java.lang.NoClassDefFoundError: javax/mail/MessagingException 
    at java.lang.Class.getDeclaredConstructors0(Native Method) 
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2663) 
    at java.lang.Class.getDeclaredConstructors(Class.java:2012) 
    at org.springframework.beans.factory.annotation. 

내가 다른 게시물에 읽혀질 것을 그 그것은 pom.xml 파일에 실행 종속을 추가 고정, 그래서 그것을 한 수 :

의 pom.xml을

<dependency> 
    <groupId>javax.mail</groupId> 
    <artifactId>mail</artifactId> 
    <version>1.4.3</version> 
</dependency> 

project

하지만 여전히 나는 오류가 발생했습니다. 누군가가 나를 도와 줄 수 있습니까?

+0

프로젝트를 지우고 다시 빌드하십시오. – Jens

+0

@Jens done! 하지만 여전히 같은 오류가 발생합니다. –

답변

8

또한 1.4.3 버전에서는 더 이상 mail이라는 이슈 ID가 없습니다. 1.4.3을 사용하려면이 종속성을 사용해야합니다.

<dependency> 
    <groupId>javax.mail</groupId> 
    <artifactId>mailapi</artifactId> 
    <version>1.4.3</version> 
</dependency> 
+0

종속성을 지정하고 여전히 동일한 오류가 발생합니다. –

+0

이 오류는 언제 발생합니까? Tomcat을 사용하여 코드를 실행하는 경우 tomcat이 메일 항아리에 액세스 할 수 있는지 확인해야합니다. 즉, war \ WEB-INF \ lib 또는 shared \ lib 폴더에 있어야합니다. – vanval

+0

서버가 시작할 때 오류가 발생합니다. @vanval –

0

자바 메일 API의 최신 버전은

<dependency> 
    <groupId>javax.mail</groupId> 
    <artifactId>javax.mail-api</artifactId> 
    <version>1.5.2</version> 
</dependency> 

는이 버전으로 동일한 오류를받을 수 있나요이다?

+0

에도 여전히 같은 오류가 발생합니다. 내 편집을 확인해주세요. –

0

javax/mail/MessagingException은 버전 1.4에 이미 있습니다. 그래서 이것은 IDE 내의 어셈블리 문제 일뿐입니다. pom 의존성을 새로 고치고 IDE가 빌드 한 아티팩트를 확인하면 충분합니다.

+0

제 편집을 확인하십시오. 다른 사용자가 이미 언급 한 –

+0

- IDE에서 IDE를 어셈블하지 않았기 때문에 클래스를 찾을 수 없습니다. IDE가 빌드하는 아티팩트를 확인하십시오. 또한 응용 프로그램을 정리, 재구성, 배포 해제 및 배포하려고 시도하십시오. – fateddy

0

이 클래스는 이전에 사용했던 모든 Javamail 버전에 포함되어 있습니다. 분명히 다른 ClassNotFoundException과 마찬가지로 CLASSPATH에 Javamail JAR이 없습니다.

+0

제 편집을 확인하십시오. –

+0

그 IDE를 사용하지 않기 때문에 주석을 달 수는 없지만 내 대답은 그대로입니다. 예외는 그것을 증명한다. – EJP

0

maven을 사용하여 클래스 경로를 혼합하고 eclipse에서 수동으로 참조를 추가했습니다.

"maven nature"를 비활성화하십시오. 명령 줄에서 mvn eclipse:clean을 실행하여 프로젝트를 새로 고치고 convert it to maven project을 만든 다음 다시 시도하십시오.

정리하려면 : pom에 메일 API를 어디에 추가 했습니까? <dependecies> 이하 또는 <dependecyManagement?