提问者:小点点

无法在gradle中设置JVM参数gradle。Android Studio 2.1的属性文件。1.


-运行Android2.1。1在Mac OS X上

-应用程序不在Android手机上。

gradle.properties文件内容

org.gradle.jvmargs=-Xmx2048M

悬停时,IDE指示它是未使用的属性。它也应该是深蓝色而不是灰色。

输出:

:MyProjectDirName:transformClassesWithInstantRunSlicerForDebug
:MyProjectDirName:transformClassesWithDexForDebug
To run dex in process, the Gradle daemon needs a larger heap.
It currently has approximately 910 MB.
For faster builds, increase the maximum heap size for the Gradle daemon       
to more than 2048 MB.
To do this set org.gradle.jvmargs=-Xmx2048M in the project   
gradle.properties.
For more information see   
https://docs.gradle.org/current/userguide/build_environment.html

编译器的输出清楚地表明它丢弃了gradle.properties文件的内容。

内容构建。格拉德尔

android {
    dexOptions {
        javaMaxHeapSize "2g"
    }
}

也使用了这些设置,但未成功:


共3个答案

匿名用户

尝试添加“组织”。格拉德尔。daemon=true'位于gradle内部。属性文件位于

/Users/<username>/.gradle/ (Mac)

C:\Users\<username>\.gradle (Windows)

答案基于

https://stackoverflow.com/a/33184794/1915831

https://stackoverflow.com/a/19500539/1915831

匿名用户

这对我很有用:

属性文件:

 org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

生成文件:

android {
      ...

      defaultConfig {
          ...
          multiDexEnabled true
      }


     dexOptions {
         preDexLibraries = false;
     }
}

匿名用户

我也面临着这个问题。没有找到一个好答案。“很好”,您可以在本地属性文件夹中修复它。但是,那些建议使用1的人必须在团队中工作,或者想花时间对每个人进行修复。我的团队有一个构建服务器,这是一个瓶颈。

我确认Gradle实际上正在阅读这些项目,并且您正在阅读的“未使用”是一个错误。我通过这样改变一个poperties来证实这一点

org.gradle.jvmargs=-Xmx48m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

在这一点上,我得到了一个错误。如果不使用此资源,则不会出现以下错误

Error:Execution failed for task ':app:mergeDebugResources'.
GC overhead limit exceeded