我怎样才能给Intellij编译器更多的堆空间?
当我做一个Intellij项目,我不断收到以下内存错误。
我已经在idea.vmoptions
增加了我的堆大小:
-Xms128m -Xmx2048m -XX:MaxPermSize=1024m -XX:ReservedCodeCacheSize=64m -ea
但是我仍然得到这个错误:
Information:The system is out of resources. Information:Consult the following stack trace for details. Information:java.lang.OutOfMemoryError: Java heap space Information: at com.sun.tools.javac.util.Position$LineMapImpl.build(Position.java:139) Information: at com.sun.tools.javac.util.Position.makeLineMap(Position.java:63) Information: at com.sun.tools.javac.parser.Scanner.getLineMap(Scanner.java:1105) Information: at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:512) Information: at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:550) Information: at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:804) Information: at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727) Information: at com.sun.tools.javac.main.Main.compile(Main.java:353) Information: at com.sun.tools.javac.main.Main.compile(Main.java:279) Information: at com.sun.tools.javac.main.Main.compile(Main.java:270) Information: at com.sun.tools.javac.Main.compile(Main.java:69) Information: at com.sun.tools.javac.Main.main(Main.java:54) Information: at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) Information: at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) Information: at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) Information: at java.lang.reflect.Method.invoke(Method.java:597) Information: at com.intellij.rt.compiler.JavacRunner.main(JavacRunner.java:71) Information:Compilation completed with 1 error and 0 warnings Information:1 error Information:0 warnings Error:Compiler internal error. Process terminated with exit code 3
我错过了什么?
Settings
(Mac上的首选项)| Compiler
| Java Compiler
| 最大堆大小(MB) 。
编译器默认在单独的JVM中运行,所以您在idea.vmoptions中设置的IDEA堆设置对编译器没有影响。
从IntelliJ 2016开始,位置是File | 设置| 构build,执行,部署| 编译器| 构build进程堆大小 。
GWT在Intellij 12
FWIW,在“ Build |”期间,我的GWT应用程序出现类似的错误 重build项目 “。
这是因为Intellij做了一个我不喜欢的完整的GWT编译,因为它也是一个非常漫长的过程。
我通过closures“ 项目结构 ”下的模块checkbox来禁用GWT编译 方面| GWT '。
或者,在该位置还有一个“ 编译器最大堆大小 ”设置。
在我的情况下,错误是由分配给maven的“testing”生命周期的内存不足造成的。 它通过添加<argLine>-Xms3512m -Xmx3512m</argLine>
来<argLine>-Xms3512m -Xmx3512m</argLine>
:
<pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.16</version> <configuration> <argLine>-Xms3512m -Xmx3512m</argLine>
感谢@crazycoder指出了这一点(而且这与IntelliJ无关;在这种情况下)。
如果你的testing是分叉的,它们运行在一个新的JVM中,它不会inheritanceMaven JVM选项。 自定义内存选项必须通过pom.xml中的testing运行器提供,请参阅Maven文档以获取详细信息,但与IDE无关。
我有一个类似的问题与Ant构build(由IDEA GUI手工启动)。 在我的情况下,有正确的解决scheme右键单击Ant任务,select属性,并设置一个较高的值为“最大堆空间(Mb):”和“最大堆栈空间(Mb):”input字段。
有一个
idea64.exe
首发
IntelliJ IDEA 13.1.5 \ bin
所以你可以解决更多的空间。
- IntelliJ检查给出了“无法parsing符号”,但仍然编译代码
- 当intellij想法开始时如何防止开放最后的项目
- IntelliJ Ultimate和Community版本有什么区别?
- 我如何设置webstorm自动添加分号到javascript函数,方法等
- IntelliJ给出致命错误:无法在类path或bootclasspath中find软件包java.lang
- 在Intellij产品中着色控制台输出
- Intellij代码格式化,新行上的Java注释
- WebStorm / PhpStorm双引号在TypeScript中自动导入
- IntelliJ / Android Studio中一个文件错误的文件关联