我有一个jsp页面:
<html> <head> <title>Try in JNLP</title> <script src="http://www.java.com/js/deployJava.js"></script> <script> var dir = location.href.substring(0, location.href.lastIndexOf('/')+1); var url = dir + "try.jnlp"; deployJava.createWebStartLaunchButton(url, '1.6.0'); </script> <noscript>JavaScript is required for this page.</noscript> </head> <body> </body> </html>
并有一个jnlp文件为:
<?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" codebase="http://localhost:8080/try/" href="try.jnlp"> <information> <title>TRY JNLP</title> <vendor>TRY JNLP</vendor> </information> <resources> <!-- Application Resources --> <jar href="TryJNLP.jar" main="true" /> </resources> <application-desc name="Try JNLP" main-class="tryjnlp.TRYJNLPApp"> </application-desc> <update check="background"/> </jnlp>
所有的jar都在各自的目录中,但是当我双击jnlp文件时,它显示出一条错误消息:
java.lang.NoClassDefFoundError: org/jdesktop/application/SingleFrameApplication
其完整的错误堆栈。
就像我只是通过双击运行我的swing应用程序(TryJNLP.jar)一样,它运行完美。
请帮我。
由于此代码似乎依赖于JSR 296,因此有必要ApplicationFramework-<version>.jar在应用程序的运行时类路径中(在JNLP的资源部分中)添加::。
ApplicationFramework-<version>.jar