1. 程式人生 > >Android Invalid maximum heap size: -Xmx 解決方法

Android Invalid maximum heap size: -Xmx 解決方法

最近遇到一個bug,由於專案較大,超過了65535限制,因此要使用multiDexEnabled,build.gradle檔案如下:

dexOptions {
        javaMaxHeapSize "4g"
}
defaultConfig {
        applicationId "cn.test"
        minSdkVersion 11
        targetSdkVersion 21
        multiDexEnabled true
}

然而,編譯通過,執行時卻報下面的錯誤:

這裡寫圖片描述

報的錯是:

Error:Invalid maximum heap size:
-Xmx4g

去掉javaMaxHeapSize "4g"就能執行,可是別人加上才能執行,去掉則不能執行,報錯java堆記憶體不夠,這真是奇怪
後來發現原因是我用的JDK是32位的,別人用的都是64位的,後來改用64位jdk之後就解決問題了

怎麼檢視Jdk的版本位數?
在命令列輸入java -version,如果是64位的,則會顯示64 bit的字樣,如下圖:

這裡寫圖片描述

否則就是32位的。