【发布时间】:2013-02-03 15:55:45
【问题描述】:
配置 Web Start。我试图查找它,但找不到我的错误的答案。
java.lang.ClassNotFoundException: Webstart.Main
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at com.sun.javaws.Launcher.doLaunchApp(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
在我的服务器上我有:
test.jar
Webstart.jnlp
这是我的 .jnlp 文件
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://www.[mywebsite].com/_webstart/" href="webstart.jnlp">
<information>
<title>JFrame Deom</title>
<vendor>[ME]</vendor>
<homepage href="http://www.[mywebsite].com" />
<description>A Java Webstart Test</description>
<offline-allowed />
</information>
<resources>
<j2se version="1.7" />
<jar href="Webstart.jar" />
</resources>
<security>
<all-permissions />
</security>
<application-desc main-class="Webstart.Main" />
</jnlp>
这是我的 Java 类:
import java.awt.BorderLayout;
import javax.swing.*;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame f = new JFrame("My Frame");
f.setSize(250,250);
f.setLocation(300,300);
f.getContentPane().add(BorderLayout.CENTER, new JTextArea(10,40));
f.setVisible(true);
}
}
我运行文件的方式是在网络浏览器 URL 中输入名称。
我是新手,因此非常感谢任何帮助或支持 cmets。先感谢您。
【问题讨论】:
-
main-class="Webstart.Main"这表明Main.java声明了package Webstart;,而代码没有包声明。 (所以它不会起作用。)这些值不是魔法咒语,你真的需要理解它们的含义,它们的要求,以及以什么形式。 -
还有
<jar href="Webstart.jar" />。我认为应该指向 test.jar -
使用@AndrewThompson 的 JaNeLa 工具来验证您的 jnlp 文件。顺便说一句,在本地服务器上成功了吗?
标签: java jar jnlp classnotfoundexception java-web-start