尝试在 circleci.com 上运行我的 Gradle Android 项目时,我收到以下警告:
警告:构建 VM 的内存限制为 4G。您的构建在一个或多个容器上达到了此限制,并且您的构建结果可能无效。
尝试在 circleci.com 上运行我的 Gradle Android 项目时,我收到以下警告:
警告:构建 VM 的内存限制为 4G。您的构建在一个或多个容器上达到了此限制,并且您的构建结果可能无效。
GRADLE_OPTS 可以在 circle.yml 文件中设置:
machine:
environment:
GRADLE_OPTS: -Xmx512m -XX:MaxPermSize=512m
允许您将开发配置和构建配置分开。
编辑:
CircleCi 更新了他们的文档,这是 Android 构建的推荐配置:
machine:
environment:
GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"'
如果使用Gradle WrapperDEFAULT_JVM_OPTS
,你可以gradlew
这样设置:
DEFAULT_JVM_OPTS="-Xmx512m"
gradlew.bat
如果您在 Windows 上,请以类似的方式设置它:
set DEFAULT_JVM_OPTS=-Xmx512m
这些告诉JVM限制堆大小。您可以测试不同的内存分配以获得更快的编译时间。
PS它实际上是在我的机器上本地进行编译过程,而不是突突我的cpu。编译速度较慢,但操作系统响应速度较快。
有时您需要同时设置 gradle 选项和 java 选项,因为像 NewRelic 这样的一些库不使用 gradle 选项变量中的 jvm 并且需要 java 选项变量
machine:
environment:
GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx512m -XX:+HeapDumpOnOutOfMemoryError"'
_JAVA_OPTIONS: "-Xms512m -Xmx1024m"