在运行 Fedora16 的 PC 上看到
javaws -verbose jviewer.jnlp
从 root 帐户启动时,可以正常运行小程序。从普通用户帐户启动时,会因 FailedDownloadException 而失败。tcpdump 显示在第二种情况下没有发送任何 TCP 数据包。我的网络不需要代理。无论是否从 root 启动,命令的输出看起来都相同。如下所示:
% javaws -verbose jviewer.jnlp
Java(TM) Web Start 10.0.0.8-fcs Launching: /usr/java/jre1.7.0_01/bin/java /usr/java/jre1.7.0_01/bin/java
-classpath /usr/java/jre1.7.0_01/lib/deploy.jar
-Djava.security.policy=file:/usr/java/jre1.7.0_01/lib/security/javaws.policy
-DtrustProxy=true
-Xverify:remote
-Djnlpx.home=/usr/java/jre1.7.0_01/bin
-Dsun.awt.warmup=true
-Djnlpx.origFilenameArg=jviewer.jnlp
-Djnlpx.remove=true
-Xbootclasspath/a:/usr/java/jre1.7.0_01/lib/javaws.jar:/usr/java/jre1.7.0_01/lib/deploy.jar:/usr/java/jre1.7.0_01/lib/plugin.jar
-Djnlpx.splashport=37732
-Djnlpx.jvm=/usr/java/jre1.7.0_01/bin/java
com.sun.javaws.Main
-verbose
/tmp/javawg9rK2Q
答案1
Javaws 无法理解以 ip/mask 形式编写的 Firefox“无代理”异常(jre1.7.0_01,Firefox 10.0)。它对 root 有效,因为 Firefox 根本不使用代理。我的用户帐户使用代理,因此我通过将完整 IP 地址添加到 Firefox 的“无代理”异常设置中来让 javaws 在那里工作。