2014-03-31 39 views
1

传统的Java 5应用程序现在在移植到Java 7后引发异常。我在Java类中使用此代码来返回URL。 URL可以是文件路径或应用程序的代码库。 URL是文件路径时会引发错误。这里出了什么问题? 它在Java 5中完美运行。Java 7 webstart

+2

“_An错误是thrown_” 哪些错误?它是一个错误还是异常?(您在文章中使用了两个术语) – csmckelvey

+0

当URL尝试查找文件路径时,它会引发文件未找到异常。 java.io.FileNotFoundException:http:// urlforwebstartapp/filename \t .... at java.lang.Thread.run(Unknown Source) – user3375061

+0

您可以[编辑](http://stackoverflow.com/posts/22765459/编辑)你的问题,并添加整个堆栈跟踪。它可能有助于解决您的问题。 – csmckelvey

回答

1

Sun长期以来一直在说“不要将应用程序资源放在应用程序安装目录!”中。

他们决定通过确保没有小程序或应用程序在1.6(AFAIR)期间的某些时间使该建议稍微正式化一些。使用JWS进行部署可以获得安装路径,即使它已经声明所有权限!针对应用。如果尝试过,JVM将'撒谎'并直接指向Jars第一次下载的地方,即使它们本地缓存并且JVM使用缓存中的文件。

所以,(根据该决定)应用程序。坏了,需要修复。如果你提出了一个错误报告,它将被关闭为“不是一个错误”。

在一个侧面说明:

URL fileurl = new URL(getCode() + file); 

也许应该是:

URL fileurl = new URL(getCode(), file);