繁体   English   中英

如何为通过“gradle run”启动的 Java 应用程序设置最大堆大小 (-Xmx)?

[英]How to set maximum heap size (-Xmx) for Java application that gets started via "gradle run"?

如果我们想要清理、构建然后运行我们的应用程序,我们使用./gradlew clean run runGradle Application plugin的一部分。

我们想要实现的是使用run为应用程序分配某个最大堆大小,类似于./gradlew clean run -Xmx1G 结果应该等于运行java -Xmx16G -jar /path/to/my/app.jar

有没有办法做到这一点?


编辑:为了确保,我不想增加构建守护进程的最大堆,而是增加由 gradle 启动的应用程序的最大堆。

如4.2.1版的安装Gradle文档中所述:

请注意,目前无法在命令行上为Gradle设置JVM选项。

您正在寻找的是修改build.gradle脚本。 您可以将这个小代码片段添加到build.gradle文件中:

tasks.withType(JavaExec) {
    jvmArgs = ['-Xmx16g']
}

如果还要配置初始Java堆大小,请添加以下代码:

tasks.withType(JavaExec) {
    jvmArgs = ['-Xms1g', '-Xmx16g']
}

你可以在 Linux/Mac 中使用这个命令:

export _JAVA_OPTIONS="-Xms200m -Xmx800m" 

其中值 200 和 400 可以根据您的需要进行更改。 请注意它的_JAVA_OPTIONS

然后运行 gradle 命令。 例如

gradle bootRun

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM