Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gradle 詹金斯·格拉德尔;无法为对象堆保留足够的空间;_Gradle_Jenkins_Jvm_Heap - Fatal编程技术网

Gradle 詹金斯·格拉德尔;无法为对象堆保留足够的空间;

Gradle 詹金斯·格拉德尔;无法为对象堆保留足够的空间;,gradle,jenkins,jvm,heap,Gradle,Jenkins,Jvm,Heap,我试图在Jenkins上与Gradle一起运行构建任务,但Gradle未能运行 Error occurred during initialization of VM Could not reserve enough space for object heap Error: Could not create the Java Virtual Machine. 参数-Xmx2048m显然在Java中用于运行Gradle进程。 如果此参数存在问题,我应该在哪里更改它?(Jenkins配置为-Xmx1

我试图在Jenkins上与Gradle一起运行构建任务,但Gradle未能运行

Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
参数
-Xmx2048m
显然在Java中用于运行Gradle进程。 如果此参数存在问题,我应该在哪里更改它?(Jenkins配置为
-Xmx1024m
)。我在1GB内存的设备上运行它(在运行任务之前大约有700-500MB的空闲空间)

完整日志:

关于“GRADLE_选项”的讨论

Gradle构建步骤您可以通过添加 GRADLE_在Jenkins global中选择全局环境变量 配置要执行此操作,请单击管理Jenkins,然后单击配置 系统。在“全局属性”区域中,单击环境 “变量”复选框,然后添加名为 GRADLE_选择适当设置的值,类似于屏幕 上图为关于MAVEN_选项的照片


我不得不修改项目文件夹中的
gradle.properties
文件

原始设置:

org.gradle.jvmargs=-Xmx2048m
org.gradle.jvmargs=-Xmx512m -Xms100m
新设置:

org.gradle.jvmargs=-Xmx2048m
org.gradle.jvmargs=-Xmx512m -Xms100m
参考资料:


你能列出你所有的尝试吗?@ND27在配置中更改Jenkins的堆大小,尝试带或不带deamon的Gradle,不同版本的Gradle(最新的rc和现在的2.10),Gradle包装器与Jenkins安装的Gradle,释放RAMI不认为当机器只有500MB空闲空间时,你会想为Java分配2GB。这可能会导致您的构建占用比机器可用内存更多的内存,这可能会导致错误或崩溃。总的来说,我建议不要在这么小的机器上运行詹金斯。如果你不得不这样做,试着给gradle分配更少的内存,这样可能会更好。但是,如果您的构建很大,它很可能会在整个堆栈中崩溃。@Jolta的可能重复问题是我不知道如何在Jenkins中更改Gradle进程的JVM参数。虽然这本身不是一个很好的解决方案,但这将影响除Jenkins主机之外的其他服务器上的构建,Jenkins主机可能有更多可用内存。有关仅对Jenkins主机产生局部影响的替代解决方案,请参阅Jayan的答案。@Jolta Jayan的答案对我来说并不合适,但有一种方法可以使
gradle.properties
在每台机器上工作,而不是在每个项目上工作。这很好地帮助了我。谢谢