Class 未在 java Web 启动中找到
Class Not found in java web start
我正在使用 Java web start 启动 jar 文件。
我遵循了以下教程
http://www.mkyong.com/java/java-web-start-jnlp-tutorial-unofficial-guide/
http://examples.javacodegeeks.com/java-basics/web-start/java-web-start-getting-started/
我从我的 eclipse IDE 创建了 java 项目。
我的 eclipse ide 和文件夹中的结构如下,
我把jar和jnlp文件粘贴到tomcat/webapps/ROOT文件夹里,ROOT文件夹内容如下,
D:\tomcat7\webapps\ROOT>dir
Volume in drive D is RECOVERY
Volume Serial Number is DC2F-E701
Directory of D:\tomcat7\webapps\ROOT
18-11-2015 19:23 <DIR> .
18-11-2015 19:23 <DIR> ..
17-11-2015 16:17 301 .classpath
17-11-2015 16:17 387 .project
17-11-2015 16:17 <DIR> .settings
23-09-2015 15:19 5,866 asf-logo-wide.gif
23-09-2015 15:19 17,811 asf-logo.png
23-09-2015 15:19 713 bg-button.png
23-09-2015 15:19 1,918 bg-middle.png
23-09-2015 15:19 1,392 bg-nav-item.png
23-09-2015 15:19 1,401 bg-nav.png
23-09-2015 15:19 3,103 bg-upper.png
23-09-2015 15:19 3,469 build.xml
17-11-2015 16:48 <DIR> com
23-09-2015 15:19 21,630 favicon.ico
23-09-2015 15:19 12,408 index.jsp
17-11-2015 16:21 2,957 JNLPExample.jar
17-11-2015 16:22 612 JNLPExample.jnlp
17-11-2015 16:20 <DIR> META-INF
23-09-2015 15:19 9,195 RELEASE-NOTES.txt
23-09-2015 15:19 2,376 tomcat-power.gif
23-09-2015 15:19 5,926 tomcat.css
23-09-2015 15:19 2,066 tomcat.gif
23-09-2015 15:19 5,103 tomcat.png
23-09-2015 15:19 67,787 tomcat.svg
23-09-2015 15:20 <DIR> WEB-INF
20 File(s) 166,421 bytes
6 Dir(s) 2,712,481,792 bytes free
D:\tomcat7\webapps\ROOT>
jar -tvf 的输出JNLPExample.jar
D:\tomcat7\webapps\ROOT>jar -tvf JNLPExample.jar
338 Tue Nov 17 16:21:16 IST 2015 META-INF/MANIFEST.MF
500 Tue Nov 17 16:21:16 IST 2015 META-INF/STATHIS.SF
977 Tue Nov 17 16:21:16 IST 2015 META-INF/STATHIS.DSA
0 Tue Nov 17 16:20:06 IST 2015 META-INF/
301 Tue Nov 17 16:17:16 IST 2015 .classpath
387 Tue Nov 17 16:17:16 IST 2015 .project
0 Tue Nov 17 16:17:16 IST 2015 .settings/
598 Tue Nov 17 16:17:18 IST 2015 .settings/org.eclipse.jdt.core.prefs
我的 .classpath 文件(提取的 JNLPExmaple.jar)
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="output" path="bin"/>
</classpath>
我的 .project 文件(提取的 JNLPExmaple.jar)
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>JNLPExample</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
我在安装应用程序时遇到以下错误。它说
"java.lang.ClassNotFoundException: main.javacodegeeks.JNLPExample"
但它在那个包中可用。
根据我使用的jnlp文件,
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://localhost:8080/" href="JNLPExample.jnlp">
<information>
<title>JNLP Example</title>
<vendor>Java Code Geeks</vendor>
<homepage href="http://localhost:8080/" />
<description>JNLP Testing</description>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="JNLPExample.jar" />
</resources>
<application-desc main-class="main.javacodegeeks.JNLPExample" />
</jnlp>
在你的 jar 文件中没有 main/javacodegeeks 包。里面应该有一个 class 文件,folder.You 可以添加它们并再次压缩一个 jar 然后试试,也你可以将它公开为 exe jar,这样它就会按原样压缩。
希望对您有所帮助..
我正在使用 Java web start 启动 jar 文件。
我遵循了以下教程
http://www.mkyong.com/java/java-web-start-jnlp-tutorial-unofficial-guide/
http://examples.javacodegeeks.com/java-basics/web-start/java-web-start-getting-started/
我从我的 eclipse IDE 创建了 java 项目。
我的 eclipse ide 和文件夹中的结构如下,
我把jar和jnlp文件粘贴到tomcat/webapps/ROOT文件夹里,ROOT文件夹内容如下,
D:\tomcat7\webapps\ROOT>dir
Volume in drive D is RECOVERY
Volume Serial Number is DC2F-E701
Directory of D:\tomcat7\webapps\ROOT
18-11-2015 19:23 <DIR> .
18-11-2015 19:23 <DIR> ..
17-11-2015 16:17 301 .classpath
17-11-2015 16:17 387 .project
17-11-2015 16:17 <DIR> .settings
23-09-2015 15:19 5,866 asf-logo-wide.gif
23-09-2015 15:19 17,811 asf-logo.png
23-09-2015 15:19 713 bg-button.png
23-09-2015 15:19 1,918 bg-middle.png
23-09-2015 15:19 1,392 bg-nav-item.png
23-09-2015 15:19 1,401 bg-nav.png
23-09-2015 15:19 3,103 bg-upper.png
23-09-2015 15:19 3,469 build.xml
17-11-2015 16:48 <DIR> com
23-09-2015 15:19 21,630 favicon.ico
23-09-2015 15:19 12,408 index.jsp
17-11-2015 16:21 2,957 JNLPExample.jar
17-11-2015 16:22 612 JNLPExample.jnlp
17-11-2015 16:20 <DIR> META-INF
23-09-2015 15:19 9,195 RELEASE-NOTES.txt
23-09-2015 15:19 2,376 tomcat-power.gif
23-09-2015 15:19 5,926 tomcat.css
23-09-2015 15:19 2,066 tomcat.gif
23-09-2015 15:19 5,103 tomcat.png
23-09-2015 15:19 67,787 tomcat.svg
23-09-2015 15:20 <DIR> WEB-INF
20 File(s) 166,421 bytes
6 Dir(s) 2,712,481,792 bytes free
D:\tomcat7\webapps\ROOT>
jar -tvf 的输出JNLPExample.jar
D:\tomcat7\webapps\ROOT>jar -tvf JNLPExample.jar
338 Tue Nov 17 16:21:16 IST 2015 META-INF/MANIFEST.MF
500 Tue Nov 17 16:21:16 IST 2015 META-INF/STATHIS.SF
977 Tue Nov 17 16:21:16 IST 2015 META-INF/STATHIS.DSA
0 Tue Nov 17 16:20:06 IST 2015 META-INF/
301 Tue Nov 17 16:17:16 IST 2015 .classpath
387 Tue Nov 17 16:17:16 IST 2015 .project
0 Tue Nov 17 16:17:16 IST 2015 .settings/
598 Tue Nov 17 16:17:18 IST 2015 .settings/org.eclipse.jdt.core.prefs
我的 .classpath 文件(提取的 JNLPExmaple.jar)
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="output" path="bin"/>
</classpath>
我的 .project 文件(提取的 JNLPExmaple.jar)
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>JNLPExample</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
我在安装应用程序时遇到以下错误。它说
"java.lang.ClassNotFoundException: main.javacodegeeks.JNLPExample"
但它在那个包中可用。
根据我使用的jnlp文件,
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://localhost:8080/" href="JNLPExample.jnlp">
<information>
<title>JNLP Example</title>
<vendor>Java Code Geeks</vendor>
<homepage href="http://localhost:8080/" />
<description>JNLP Testing</description>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="JNLPExample.jar" />
</resources>
<application-desc main-class="main.javacodegeeks.JNLPExample" />
</jnlp>
在你的 jar 文件中没有 main/javacodegeeks 包。里面应该有一个 class 文件,folder.You 可以添加它们并再次压缩一个 jar 然后试试,也你可以将它公开为 exe jar,这样它就会按原样压缩。
希望对您有所帮助..