我有一个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),它运行得很好。
请帮帮我。
答案 0 :(得分:1)
由于此代码似乎依赖于JSR 296,因此有必要将:ApplicationFramework-<version>.jar
添加到应用程序的运行时类路径中(在JNLP的资源部分中)。