首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >deployment.properties文件中的系统范围JRE设置会被忽略吗?

deployment.properties文件中的系统范围JRE设置会被忽略吗?
EN

Server Fault用户
提问于 2015-02-27 12:26:11
回答 1查看 17.4K关注 0票数 1

基本上,我的问题与这个问题中的问题相同。但是,所提出的解决方案对我不起作用,对Win2003服务器和用于测试的Win7膝上型计算机都不起作用。

我有一个Java 6程序,它是由.Net程序通过ActiveX桥dll启动的.为了进行测试,我使用了安装了3个JRE的Win7计算机: jdk1.7.0_55、jre1.6.0_45和jre1.6.0_38-x64。应用程序总是使用jre1.6.0_45,并以最多95040 it的内存启动,但我需要它稍微多一点。

增加内存的方法是编辑文件<userprofile>\AppData\LocalLow\Sun\Java\Deployment\deployment.properties并添加以下行:

deployment.javaws.jre.1.args=-Xmx100m

但问题是,这只对一个用户有效,我希望它对服务器上的所有用户都有效。

正如在这个答案中讨论的那样,我创建了一个包含内容的文件C:\Windows\Sun\Java\Deployment\deployment.config

deployment.system.config=file\:C\:/Windows/Sun/Java/Deployment/deployment.properties

然后,我将用户配置文件中的deployment.properties文件复制到C:\Windows\Sun\Java\Deployment\文件夹中,并再次将deployment.javaws.jre.1.args=-Xmx100m行添加到复制的文件中。但奇怪的是,这是行不通的。

到目前为止我尝试过的

  • 将deployment.config和deployment.properties文件放在使用的JRE (D:\Java\jre1.6.0_45\lib)和最近的JRE (D:\Java\jdk1.7.0_55\jre\lib)的lib文件夹中
  • 将文件放置在仅安装了一个JRE的(虚拟) Win2003服务器的C:\Windows\Sun\Java\部署文件夹中(v1.6.0_11)
  • 添加了行deployment.javaws.jre.0.args=-Xmx100deployment.javaws.jre.2.args=-Xmx100,因此所有已安装的JRE都将使用相同的设置
  • 将第二行deployment.system.config.mandatory=true添加到deployment.config文件中,并将deployment.properties文件的路径更改为不存在的东西->什么都没有发生,应用程序启动得很好,因此似乎deployment.config文件被JRE完全忽略了。

有人知道我哪里出了问题吗?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2015-03-02 14:27:18

  1. 我不确定file\:C\:/Windows/Sun/Java/Deployment/deployment.properties是否是有效的Windows文件URI甲骨文文档列出了稍微不同和更可信的一个:file:///C:/Windows/Sun/Java/Deployment/deployment.properties
  2. 尝试将deployment.system.config.mandatory设置为True,看看应用程序是否无法启动。如果它失败了,这意味着JAVA不能通过URI访问deployment.config,它需要修复: deployment.system.config.mandatory属性是一个布尔值。如果设置为true,则必须找到并成功加载由deployment.system.config属性指向的deployment.system.config文件,否则,不允许运行任何文件。如果属性设置为false,则尝试查找和加载部署。由deployment.system.config属性指向的属性文件。如果成功,则使用该文件,否则将忽略该文件。deployment.system.config.mandatory属性的默认设置为false。
  3. 这个职位建议,您可以尝试删除:
    • 文件:%localappdata%\Sun\Java\Deployment\deployment.properties
    • 注册表项:HKEY_CURRENT_USER\Software\AppDataLow\Software\JavaSoft\DeploymentProperties

  4. 在这篇文章中描述了JAVA 7的一个问题:Java1.7使用SCCM/MDT自动更新部署

更多的想法:

我开始认为这种JRE系统范围的配置不适用于任何Java版本。否则我完全失去了一些东西

嗯,我发现它在1.6.0_03和1.6.0_07中肯定不起作用:

问: Java插件相关的部署属性在系统级部署属性文件中被忽略。这个问题在1.6.0_03和1.6.0_07上是严格可重复的。答:用6u14 b01测试。系统级部署配置正在新的java插件中运行。我们不会为旧插件修复它。关闭CR作为不可复制的新插件。系统级部署配置是java的一个特性。它还没有在java插件中使用。从6u10开始,新的java插件和java都使用了相同的jre选择机制。这使得新插件能够适应系统级别的配置。将此CR标记为RFE,并将较低的优先级标记为中等。

还有一种解决办法:

以下是解决此问题的方法:“如何在Windows PC上全局配置属性(例如Xmx) ?”然而,这并不是特定于某些组件,如Java插件或Java。打开Windows :高级环境变量→系统变量→新变量→变量名称:_JAVA_OPTIONS变量值:-Xmx256m #(例如)在重启"Internet“时关闭所有按OK的窗口,配置将处于活动状态。这种配置将影响所有Java程序:启动程序"java.exe“和javaws.exe "javaws.exe”,以及由浏览器启动的javaws.exe。

票数 3
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/671871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档