我有...一个情况。想象一下,您有很多很多 PC(Windows 7 到 8)运行一个使用 .jnlp 启动的 Java 应用程序。现在终于出现了从 java 6 到 8 的版本跳跃(花了很多时间),突然这个应用程序不再启动(无法解析第一个 jnlp,javaws 告诉我)。
为了解决这个问题,我们必须在 java 控制面板中插入正确的代理设置(旧版本不需要)。 所以...手动执行此操作是大多数用户无法执行的任务(遗憾的是他们的知识水平不够),但是我自己在所有 PC 上执行此操作将需要...呃...一个非常长的时间时间。
因此,我们决定创建一个小批处理文件,它执行所有必要的操作(安装最新的 jre、清除缓存等),只需在每个用户 PC 上运行一次即可。理论上。
我们能够将所有必要的步骤放入该 .bat 中,除了在 java 控制面板中设置代理之外。我想知道这是否可能。 javaws 参数不包含这样的参数,并且我无法在 jre 或 java 缓存内找到物理存储。
恐怕我无法对 .jnlp 文件使用这些 -dHTTP.xxx... 标志,因为 java webstart 需要知道正确的代理设置,而不是应用程序。
那么有没有一种方法可以通过某些命令行参数或类似的东西来更改可以通过 java 控制面板访问的代理设置,从而使我自己能够完成这个“全新”脚本?
你好,困惑的梅林
最佳答案
Java 控制面板设置位于 %userprofile%\AppData\LocalLow\Sun\Java\Deployment\deployment.properties
要添加代理,您可以使用类似的东西
(
(echo(deployment.proxy.bypass.local=true)
(echo(deployment.proxy.type=1)
(echo(deployment.proxy.http.host=10.10.10.10)
(echo(deployment.proxy.http.port=10)
)>>"%userprofile%\AppData\LocalLow\Sun\Java\Deployment\deployment.properties"
但是如果已经设置了代理,您需要替换数据。
关于Java 控制面板代理设置 - 它们存储在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34631075/