无法设置java堆空间>;Win2008上的2GB 64位

无法设置java堆空间>;Win2008上的2GB 64位,java,jenkins,jvm,jvm-arguments,Java,Jenkins,Jvm,Jvm Arguments,无法使用-Xmx将java堆空间设置为2GB或更多,即使RAM大小为16GB 我遇到了一个错误,说 这是在我的Win2008 x64机器上启动Jenkins服务器时看到的。 请让我知道我是否可以更改任何允许我分配更多内存的系统参数 谢谢快跑 java -version 看看你看到了吗 Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode) 我希望您有一个32位版本的java,限制为2GB(因为它不知道大的地址)使用“ja

无法使用
-Xmx
将java堆空间设置为
2GB
或更多,即使
RAM
大小为
16GB

我遇到了一个错误,说

这是在我的
Win2008 x64机器上启动Jenkins服务器时看到的。

请让我知道我是否可以更改任何允许我分配更多内存的系统参数

谢谢

快跑

java -version
看看你看到了吗

Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)

我希望您有一个32位版本的java,限制为2GB(因为它不知道大的地址)

使用“java-version”来确保您的java热点是64位服务器vm。

32位JVM上最大堆大小的理论限制是4GB,而64位JVM的最大堆大小是2^64


有关更多详细信息,请参见上文尼尔给出的线索

详情如下:

即使机器上安装了JDK 1.7 x64位,Jenkins在默认情况下也没有配置此版本

Jenkins有自己的JRE捆绑在安装程序中,默认情况下使用

要将其更改为其他JDK,请编辑Jenkins.xml文件并修改以下值

<executable>jre\bin\java</executable>
jre\bin\java

\bin\java

现在问题解决了!!

您使用了哪个命令?您确定您的java不是32位版本吗?带参数的简单java命令“-Xrs-Xmx2048m-Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle-jar”%BASE%\jenkins.war“-httpPort=8090”。java是64位版本,但jenkins应用程序是32位的“x86程序文件”“尽管您安装了64位版本的Java,但您的jenkins使用的是32位版本。您真的有带2BG而不是2GB的-Xmx吗?对不起!只是一个输入错误是的,我看到“java version”1.7.0_13“java(TM)SE运行时环境(build 1.7.0_13-b20)java HotSpot(TM)64位服务器VM(build 23.7-b01,mixed mode)”用默认参数启动jenkins,然后转到并查看java真正使用的是什么。如果您将其作为服务启动,它可能会选择系统默认值。太棒了!!非常感谢,它与它所指的java有关。已更改XML文件以完成此操作。。!如果不介意的话,我可以编辑您的答案并为修复添加更多详细信息吗?我看到这个“java版本”1.7.0_13“java(TM)SE运行时环境(build 1.7.0_13-b20)java HotSpot(TM)64位服务器VM(build 23.7-b01,mixed mode)“java 32位不支持大地址,因此默认情况下无法使用最高位,因此限制为2Gb。
<executable>jre\bin\java</executable>
<executable><jdk install path>\bin\java</executable>