Java JApplet从签名jar抛出ClassNotFoundException
我已经构建了一个applet(来自JApplet),它使用其他几个jar文件。我已经签署了我的jar,它包含了主类,并且包含了我需要的所有jar(我想)。然而,无论我尝试什么,我总是得到“java.lang.ClassNotFoundException:newposting”,其中“newposting”是我签名的jar中的主类。我正在为此使用以下html:Java JApplet从签名jar抛出ClassNotFoundException,java,jar,applet,classnotfoundexception,japplet,Java,Jar,Applet,Classnotfoundexception,Japplet,我已经构建了一个applet(来自JApplet),它使用其他几个jar文件。我已经签署了我的jar,它包含了主类,并且包含了我需要的所有jar(我想)。然而,无论我尝试什么,我总是得到“java.lang.ClassNotFoundException:newposting”,其中“newposting”是我签名的jar中的主类。我正在为此使用以下html: <p><applet code="newposting" archive="HartfordRowingNewPost
<p><applet code="newposting"
archive="HartfordRowingNewPosting.jar,
javax.mail.jar,
jcalendar-1.4.jar,
junit-4.6.jar,
jgoodies-common-1.2.0.jar,
jgoodies-looks-2.4.1.jar,
mysql-connector-java-5.1.25-bin.jar"
width="500" height="850">
<param name="permissions" value="sandbox" />
<param name="codebase" value="HartfordRowingNewPosting.jar" />
</applet></p>
jar和html都位于服务器上的同一文件夹中。我尝试了几种路径规范的组合。我也尝试过使用jnlp,但得到了相同的错误。在过去的一个月左右的时间里,我对这件事断断续续地感到沮丧。有人能解释一下吗?加载主类时抛出
ClassNotFoundException
这一事实意味着要么无法从jar读取类,要么无法找到jar
我希望你们能证实你们的clas确实在罐子里。如果没有,试试看。只是为了确保尝试使用unsignedjar,并查看是否存在完全相同的错误
如果是这样,你仍然有两种可能性
您确定您的类确实被称为newposting
?小写字母?在默认包中?注意:这必须是完全限定的类名
接下来,测试您的jar是否确实可用于浏览器。要做到这一点,只需将jar名称复制并粘贴到浏览器中,并在其前面加上URL即可。例如,如果HTML在http://myhost/myapp/mypage.html
尝试URLhttp://myhost/myapp/HartfordRowingNewPosting.jar
顺便问一下,参数
codebase
是什么意思?它是您的应用程序级参数吗?我不确定,但请确保这不会将浏览器与标签applet
支持的属性codebase
混淆。此属性通常是
:AlexR…感谢您的提示。我最近通过跟踪java控制台解决了这个问题,该控制台显示了它在哪里查找我的jar。这条路的确是不正确的。