我的 jsf web 应用程序使用 mail.jar 和 activation.jar 发送电子邮件,这两个和其他依赖的 jar 都在 CLASSPATH 中,(该应用程序在 tomcat 中运行) 但是我得到以下异常
java.lang.NoClassDefFoundError: javax/net/SocketFactory
java.lang.ClassLoader.findBootstrapClass(Native Method)
java.lang.ClassLoader.findBootstrapClass0(ClassLoader.java:892)
java.lang.ClassLoader.loadClass(ClassLoader.java:302)
java.lang.ClassLoader.loadClass(ClassLoader.java:300)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
java.lang.ClassLoader.loadClass(ClassLoader.java:252)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1302)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1233)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:1900)
com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:638)
javax.mail.Service.connect(Service.java:317)
javax.mail.Service.connect(Service.java:176)
javax.mail.Service.connect(Service.java:125)
我也在我的应用程序库中添加了必需的 jsse.jar(这是 Java 的标准 jar),但问题仍然存在。我现在怀疑 jre 中的 jsse.jar 是否损坏导致了这个问题。我使用的是 jre 1.6.0_13。
有人可以帮我解决这个错误吗?
最佳答案
特别是该类是 JVM 提供的标准类。检查 JVM 安装是否损坏、丢失文件等。
关于java - 获取 java.lang.NoClassDefFoundError : javax/net/SocketFactory while sending email using mail. jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5603722/