首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java: OutOfMemoryError: Idea中运行JUnits时内存不足

java: OutOfMemoryError: Idea中运行JUnits时内存不足
EN

Stack Overflow用户
提问于 2014-06-20 09:04:18
回答 5查看 36.9K关注 0票数 19

我试图从我的JUnits想法运行IntelliJ当我试图运行Test.java文件它给我一个错误说

OutOfMemoryError:内存不足

我已经尝试将分配给Idea的内存增加到6GB,但是它仍然给了我相同的错误,我遗漏了什么:/

idea64.vmoptions中增加以下内容没有帮助。当前/opt/idea/bin中的vmoption设置是:

代码语言:javascript
复制
-Xms124m
-Xmx2g
-XX:MaxPermSize=2g
-XX:ReservedCodeCacheSize=196m
-XX:+UseCodeCacheFlushing
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true

PS:-该项目有~83k文件,项目总体大小为1.1GB

遇到以下错误:-

信息:使用javac 1.6.0_35编译java源代码信息:java:系统没有资源了。信息:java:有关详细信息,请参阅以下堆栈跟踪。信息:java: at com.sun.tools.javac.util.Position$LineMapImpl.build(Position.java:139)信息:java: at com.sun.tools.javac.util.Position.makeLineMap(Position.java:63)信息: com.sun.tools.javac.parser.Scanner.getLineMap(Scanner.java:1105)信息: com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:512)信息:com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:550)信息:java: at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:804)信息:java: at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727)信息:java: at com.sun.tools.javac.main.Main.compile(Main.java:353)信息:java: at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:115)信息:java: at org.jetbrains.jps.javac.JavacMain.compile(JavacMain.java:166)信息: org.jetbrains.jps.incremental.java.JavaBuilder.compileJava(JavaBuilder.java:364)信息:java: at org.jetbrains.jps.incremental.java.JavaBuilder.compile(JavaBuilder.java:276)信息:java: at org.jetbrains.jps.incremental.javaorg.jetbrains.jps.incremental.java.JavaBuilder.build(JavaBuilder.java:162)信息:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runModuleLevelBuilders(IncProjectBuilder.java:992)信息:java: at org.jetbrains.jps.incremental.IncProjectBuilder.runBuildersForChunk(IncProjectBuilder.java:739)信息:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildTargetsChunk(IncProjectBuilder.java:769)信息:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunkIfAffected(IncProjectBuilder.java:702) Information:java: at org.jetbrains.jps.incremental.IncProjectBuilder.buildChunks(IncProjectBuilder.java:523)信息: org.jetbrains.jps.incremental.IncProjectBuilder.runBuild(IncProjectBuilder.java:314)信息: org.jetbrains.jps.incremental.IncProjectBuilder.build(IncProjectBuilder.java:179)信息:jetbrains.jps.cmdline.BuildRunner.runBuild(BuildRunner.java:129)信息:java: at org.jetbrains.jps.cmdline.BuildSession.runBuild(BuildSession.java:216)信息: org.jetbrains.jps.cmdline.BuildSession.run(BuildSession.java:111)信息:java: at org.jetbrains.jps.cmdline.BuildMain$MyMessageHandler$1.run(BuildMain.java:132)信息:java: at org.jetbrains.jps.service.impl.SharedThreadPoolImpl$1.run(信息:java: at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)信息:java: at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)信息:java: at java.util.concurrent.FutureTask.run(FutureTask.java:138)信息: java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)信息:java: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)信息:java: at java.lang.Thread.run(Thread.java:662)信息:java:错误发生在编译模块'app‘信息:编译完成,在3分钟内完成1次错误和0次警告。信息:1错误信息:0警告错误: OutOfMemoryError:内存不足

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-06-20 09:11:49

Idea在单独的java进程中运行单元测试。

你需要用

代码语言:javascript
复制
Run -> Edit Configurations...

并将-XmxNNNm添加到VM选项中。

例如:

代码语言:javascript
复制
-ea -Xmx1024m

"-ea“的意思是”启用断言“。

如果单元测试不能在1GB内存中运行,那么就有可能出现内存泄漏。

票数 29
EN

Stack Overflow用户

发布于 2014-06-23 08:59:18

根据您的日志,问题在编译器堆空间中。

代码语言:javascript
复制
Settings -> Compiler -> Build process heap size (MB)

并提高这个价值。

票数 38
EN

Stack Overflow用户

发布于 2019-07-18 04:02:40

由于此OOM是在编译期间发生的,因此需要增加编译VM:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24323628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档