最近遇到一个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位的。