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

标签 java gradle parameters heap-memory

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

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

有什么办法可以实现吗?


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

最佳答案

Installing Gradle documentation 中所述对于版本 4.2.1:

Note that it’s not currently possible to set JVM options for Gradle on the command line.

你要找的可以通过修改build.gradle脚本来实现。您可以将这个小代码片段添加到您的 build.gradle 文件中:

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

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

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

关于java - 如何为通过 "gradle run"启动的 Java 应用程序设置最大堆大小 (-Xmx)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46543474/

相关文章:

java - 开关内的数组

android - 如何在 androidTest 配置中排除或替换应用依赖项

java - Gradle : How to call implicit task provided by application plugin from other task

javascript - 从 Javascript 获取 url 参数字符串

java rmi重新连接客户端问题

java - 以编程方式创建环境变量

java - 我如何以编程方式锁定手机android

gradle - 如何在没有 jcenter 存储库的情况下使用 greenorg.greenrobot :greendao-gradle-plugin:3. 3.0?

sql - 如何将多个值代替单个值传递给存储过程

scala - 如何定义一个将函数文字(带有隐式参数)作为参数的函数?