我有一个 Java Web Start 应用程序,我使用 JNLP 文件成功启动了它,无需公司防火墙,但我无法解决这个问题:
com.sun.deploy.net.FailedDownloadException: Unable to load resource: url://file.jnlp
当我使用我的 Mac OS X 终端启动它时,我看到:
PROMPT$ javaws -Xnosplash file.jnlp
java.lang.IllegalArgumentException: port out of range:-1
... rest of stacktrace ...
我知道 Java Web Start 会尝试打开一个服务器,在一个随机端口上监听启动画面,这就是我尝试在命令中添加 -Xnosplash 的原因。
我知道该应用程序除了启动画面外仅使用端口 80。
我怎样才能自行运行该应用程序,或者我应该要求 IT 部门打开什么才能这样做?
答案1
FailedDownloadException 是由 java.net.InetSocketAddress 类抛出的,这意味着由于某种原因,您的本地配置不允许加载 Java Web Start 启动文件。这可能是因为您的本地网络上有严格的代理,或者因为您的本地安全包配置为阻止 JNLP 文件。它也可能意味着应用程序中存在错误或 Java 运行时中存在错误。
一些想法:
- 检查 Java 运行时的版本。 较新的版本并不总是更好。
- 关闭计算机和浏览器中的所有安全软件
- 如果涉及代理,请检查其参数
- 关闭 IPV6
- 验证 JAR 的 URL 在 JNLP 中是否正确指定
- 验证 JAR 是否已正确签名,以及其证书颁发机构 (CA) 是否在计算机上被识别
- 你确定Mac和服务器之间没有防火墙吗?