我正在尝试编译依赖于Ormlite的Android应用程序,无论如何我仍然会收到OutOfMemory错误.
我认为Maven不传递有关堆大小的任何参数的原因是,我只能在其输出中看到以下内容:
/System/library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -jar /Users/mikhail.borozdin/androID-sdk-macosx/platform-tools/lib/dx.jar –dex- -output = /用户/mikhail.borozdin/documents/workspace/AndroIDOrmliteTest/target/classes.dex
我如何尝试将参数传递给JVM?
>出口MAVEN_OPTS = -Xmx2048m
> mvn -X install -Dargline =“-Xmx2048m”
>在pom.xml中设置我的插件
>在pom.xml中设置我的插件
这些都不起作用.
解决方法:
如果您正在构建的项目使用的是android-maven-plugin,则需要在maven pom.xml文件中设置dex mojo configuration,例如:
<dex> <jvmArguments> <jvmArgument>-xms256m</jvmArgument> <jvmArgument>-Xmx512m</jvmArgument> </jvmArguments></dex>
这是来自完整pom.xml文件的示例:
https://github.com/rtyley/agit/blob/a014c970/pom.xml#L116-121
请注意,用于dex配置的特定xml在运行androID-maven-plugin版本3.0.0(具有许多其他重要改进)的发布过程中进行了一些改进-我建议您确保使用此版本,并且该配置肯定是使用< dex>节点.
版本v3.0.0后的androID-maven-plugin will use a 1GB heap by default(在撰写本文时尚未发布).
总结以上是内存溢出为你收集整理的java-Maven似乎不将参数传递给JVM全部内容,希望文章能够帮你解决java-Maven似乎不将参数传递给JVM所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)