2011-09-08 5 views
1

Javamail에 정말 실망한 문제가 있습니다.Javamail은 Windows가 아닌 Linux에서 작동합니다.

간단한 암호화되지 않은 첨부 파일이없는 전자 메일은 Linux와 Windows에서 모두 작동합니다.

첨부 파일을 보내거나 TLS 암호화를 사용하여 전자 메일을 보내려고하면 Windows가 아닌 Linux에서만 javamail이 충돌합니다.

Transport.send (msg)에서 예외가 발생합니다. 이는 내가 작성한 것이 아닙니다.

전체 스택 추적은이 부분입니다.

java.lang.NullPointerException 
     at org.jpackage.mail.inet.smtp.SMTPConnection.getResponse(SMTPConnection.java:814) 
     at org.jpackage.mail.inet.smtp.SMTPConnection.getAllResponses(SMTPConnection.java:841) 
     at org.jpackage.mail.inet.smtp.SMTPConnection.quit(SMTPConnection.java:537) 
     at gnu.mail.providers.smtp.SMTPTransport.close(SMTPTransport.java:549) 
     at javax.mail.Transport.doSend(Transport.java:205) 
     at javax.mail.Transport.send(Transport.java:75) 

가능한 이유는 무엇입니까? Linux에서이 응용 프로그램이 작동하지 않아서 정말 실망 스럽습니다.

+0

이 동작을 일으키는 코드를 보지 않고 어떻게 다른 사람이 대답 할 것으로 예상합니까? 또한 org.jpackage의 메일 제공 업체가있는 것 같습니다 ... 어떤 라이브러리를 사용하고 있습니까? –

+0

Sun의 (또는 Oracle) 웹 사이트에서 다운로드 한 Javamail1.4.4 라이브러리에 포함 된 모든 것을 사용하고 있습니다. 이 코드는 Javamail 예제를 검색 할 때 웹에서 찾을 수있는 것과 매우 비슷합니다. –

답변

2

Oracle에서 javamail 1.4.4 배포판을 다운로드하여 검사했습니다. 포함 된 jar 파일에는 아무 것도 없습니다 org.jpackage.* 또는 gnu.mail.* 패키지가 있으므로 어딘가에서 가져와야합니다.

클래스 경로를 정리하고 가짜 패키지를 제거한 다음 다시 시도하십시오.

+0

이것은 나를 위해 완전히 해결되었습니다 (SendMailException : connection reset을 얻었습니다) - GNU 메일 패키지가 필요없는 것처럼 보입니다. – Amalgovinus

관련 문제