Java-FX无法加载资源异常

时间:2015-03-30 05:31:07

标签: java javafx tomcat7 java-web-start jnlp

我正在通过tomcat服务器的webstart运行我的Java-FX应用程序。 在对jar进行签名和版本控制之后,我在通过Web浏览器访问它时遇到了这个问题。 我正在使用jnlp和version协议通过tomcat服务器启动应用程序。

ExitException[ 3]com.sun.deploy.net.FailedDownloadException: Unable to load resource: 
  (httP://127.0.0.1:8080/gyms/lib/commons-collections-3.2.1.jar?version-id=1.0.1, 1.0.1)
    at sun.plugin2.applet.JNLP2Manager.downloadResources(Unknown Source)
    at sun.plugin2.applet.JNLP2Manager.prepareLaunchFile(Unknown Source)
    at sun.plugin2.applet.JNLP2Manager.loadJarFiles(Unknown Source)
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

2 个答案:

答案 0 :(得分:0)

您似乎正在使用带有这样的行的jnlp文件:

    <jar href="commons-collections-3.2.1.jar" version="1.0.1" />

所以你使用的是基于版本的下载协议。这将导致服务器查找名为commons-collections-3.2.1__V1.0.1.jar的文件,该文件显然不存在。

底线:不要在jnlp中指定两个冲突的版本号。决定是否要使用版本化下载并省略href - 属性中的版本号,或使用简单下载并省略version - 属性。

答案 1 :(得分:0)

问题解决了,因为我正在使用Java 1.7.51更新,而且我使用的是第三个api,java 8中也不支持它也安装在我的桌面上。 程序(x86)不应该具有比java 7更大的任何java版本,因为应用程序仅从x86获取java / bin。 这就是为什么失败的下载异常将在运行时发生。