我正在努力让我的jar文件能够在Web浏览器中正常运行。 当我从Eclipse运行小程序时,一切都很好,但是在浏览器中却出现了NoClassDefFoundError错误:
Exception: java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/bouncycastle/openpgp/PGPException
java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/bouncycastle/openpgp/PGPException
at sun.plugin2.applet.Plugin2Manager.createApplet(Plugin2Manager.java:3116)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Plugin2Manager.java:1498)
at java.lang.Thread.run(Thread.java:662)
PGPException在bcpg-jdk16-146.jar档案的org/bouncycastle/openpgp/目录中... 我的JAR包含来自bouncycastle的两个库和一个我的applet类。这是它的架构:
META-INF
-MANIFEST.MF
-CNSAPPLE.SF
-CNSAPPLE.RSA
lib
-bcprov-jdk16-146.jar
-bcpg-jdk16-146.jar
com
-CNSApplet.class
清单文件定义了类路径和主类,如下所示:
调用小程序的HTML代码:Class-Path: lib/bcpg-jdk16-146.jar lib/bcprov-jdk16-146.jar
Main-Class: com.CNSApplet
<applet code="com.CNSApplet.class" width="800" height="300" archive="cnsapplet.jar">
当然,HTML文件与cnsapplet jar文件在同一目录中。
我尝试使用sun method和其他方法来创建我的jar文件。