我编写了一个需要 1 个库 jar 文件 (prowser-0.2.0) 的小程序。我已经在 eclipse (3.6) 上测试了它并且它可以工作,但是当我将它放在我的 html 网站上时,我收到以下错误。我已从项目属性 => Java 构建路径 => 库 => 添加外部 Jar 导入 pbrowser 库。 该代码可以在可运行的 jar 中运行,并作为 Eclipse 中的小程序运行。
来自 Java 控制台的错误:
"Exception in thread "thread applet-myapplet.class-4" java.lang.NoClassDefFoundError: Could not initialize class com.zenkey.net.prowser.Prowser at myapplet.init(myapplet.java:8) at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source) at java.lang.Thread.run(Unknown Source)"
小程序代码:
import java.applet.Applet;
import com.zenkey.net.prowser.*;
public class myapplet extends Applet {
public void init() {
Prowser prowser = new Prowser();
Tab tab = prowser.createTab();
System.out.println(tab.go("http://www.google.com").getPageSource());
}
}
HTML 代码:
<html>
<head>
<title> hello world </title>
</head>
<body>
This is the applet:<P>
<applet code="myapplet.class" archive="hello.jar,prowser-0.2.0.jar" width="150" height="50">
</applet>
</body>
</html>
非常感谢您的帮助!
最佳答案
hello.jar 和 prowser-0.2.0.jar 是否与提供 HTML 的 Web 服务器中的 HTML 文件位于同一目录中?正如您的错误消息所示,该小程序似乎找到了 hello.jar。 prowser-0.2.0.jar 需要作为单独的文件添加到同一目录中,不打包在 hello.jar 本身中(如果您选择“导出为可运行的文件,Eclipse 允许您这样做”) jar ”)。
然后我还会检查 hello.jar 的 list 文件,看看它是否包含 prowser Jar 的异常 Class-Path
条目。它不应包含任何相对或绝对路径信息,而应包含文件名本身。
关于java - 导出带有引用库的 Applet Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7066301/