2011-03-04 76 views
3

我工作的一個電梯項目,並試圖與scala:cc編譯它,並使用JVM ARGS斯卡拉編譯服務器:爲什麼我在Scala中出現OutOfMemoryError編譯錯誤?

-Xmx1024m -Xss20m -XX:PermSize=64M -XX:MaxPermSize=512M -XX:+CMSClassUnloadingEnabled -XX:+CMSClassUnloadingEnabled 

該錯誤也出現在JVM ARGS:

-Xmx1024m -Xss20m -XX:PermSize=64M -XX:MaxPermSize=512M 

的結果是:

[INFO] Compiling 16 source files to /Users/axaluss/IdeaProjects/trunk/Team_Skynet/target/classes at 1299141180948 
[ERROR] java.lang.OutOfMemoryError: Java heap space 
[INFO] at scala.tools.nsc.symtab.Types$class.typeRef(Types.scala:2503) 
[INFO] at scala.tools.nsc.symtab.SymbolTable.typeRef(SymbolTable.scala:13) 
[INFO] at scala.tools.nsc.symtab.Types$TypeMap.mapOver(Types.scala:2828) 
[INFO] at scala.tools.nsc.symtab.Types$AsSeenFromMap.apply(Types.scala:3209) 
[INFO] at scala.tools.nsc.symtab.Types$AsSeenFromMap.apply(Types.scala:3085) 
[INFO] at scala.tools.nsc.symtab.Types$TypeMap.mapOver(Types.scala:2849) 
[INFO] at scala.tools.nsc.symtab.Types$AsSeenFromMap.apply(Types.scala:3209) 
[INFO] at scala.tools.nsc.symtab.Types$Type.asSeenFrom(Types.scala:507) 
[INFO] at scala.tools.nsc.symtab.Types$Type.computeMemberType(Types.scala:531) 
[INFO] at scala.tools.nsc.symtab.Symbols$MethodSymbol.typeAsMemberOf(Symbols.scala:1774) 
[INFO] at scala.tools.nsc.symtab.Types$Type.memberType(Types.scala:522) 
[INFO] at scala.tools.nsc.symtab.Types$Type.findMember(Types.scala:858) 
[INFO] at scala.tools.nsc.symtab.Types$Type.nonPrivateMembers(Types.scala:453) 
[INFO] at scala.tools.nsc.symtab.Types$class.lub0$1(Types.scala:4919) 
[INFO] at scala.tools.nsc.symtab.Types$class.lub0$1(Types.scala:4873) 
[INFO] at scala.tools.nsc.symtab.Types$class.lub(Types.scala:4943) 
[INFO] at scala.tools.nsc.symtab.SymbolTable.lub(SymbolTable.scala:13) 
[INFO] at scala.tools.nsc.symtab.Types$class.lubsym$1(Types.scala:4901) 
[INFO] at scala.tools.nsc.symtab.Types$$anonfun$38.apply(Types.scala:4924) 
[INFO] at scala.tools.nsc.symtab.Types$$anonfun$38.apply(Types.scala:4919) 
[INFO] at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:61) 
[INFO] at scala.collection.immutable.List.foreach(List.scala:45) 
[INFO] at scala.tools.nsc.symtab.Types$class.lub0$1(Types.scala:4919) 
[INFO] at scala.tools.nsc.symtab.Types$class.lub(Types.scala:4943) 
[INFO] at scala.tools.nsc.symtab.SymbolTable.lub(SymbolTable.scala:13) 
[INFO] at scala.tools.nsc.symtab.Types$class.lub(Types.scala:4863) 
[INFO] at scala.tools.nsc.symtab.SymbolTable.lub(SymbolTable.scala:13) 
[INFO] at scala.tools.nsc.symtab.Types$class.solveOne$1(Types.scala:4675) 
[INFO] at scala.tools.nsc.symtab.Types$$anonfun$solve$1.apply(Types.scala:4684) 
[INFO] at scala.tools.nsc.symtab.Types$$anonfun$solve$1.apply(Types.scala:4683) 
[INFO] at scala.collection.LinearSeqOptimized$class.foreach(LinearSeqOptimized.scala:61) 
[INFO] at scala.collection.immutable.List.foreach(List.scala:45) 
[ERROR] error: fatal error (server aborted): Java heap space 
[ERROR] one error found 

我該如何解決這個問題? 我不知道是什麼原因導致這個錯誤,並在Google上發現任何東西,除了增加內存。

回答

2

很明顯,你必須增加mx。一個問題斯卡拉確實有它的大內存消耗。隨着64位CPU和服務器操作系統的廣泛採用,以及當前採用64位桌面操作系統的激增,我預計它不會持續太久。

+0

千兆字節是不夠?! – axaluss 2011-03-04 17:24:29

+0

2 GB xmx是不夠的。它正在編譯幾分鐘,並因內存不足錯誤而失敗。 – axaluss 2011-03-04 17:44:34

+2

@axaluss好吧,那可能是別的。也許你有複雜或大量的「匹配」陳述?這些已知容易受到指數內存複雜性的影響。 – 2011-03-04 19:00:51

相關問題