Ich bekomme org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':compileScala'
versuchen, mein Scala-Projekt mit Gradle zu bauen, und wenn ich Gradle mit --stacktrace
laufen, sieht es aus wie der Schuldige ist java.lang.OutOfMemoryError: PermGen space
.Wie erhöhe ich den PermGen-Speicherplatz für die Scala-Kompilierung unter Gradle?
Ich versuchte, die Kompilierungsaufgabe zu forkieren und MaxPermSize
zu den gegabelten JVM-Argumenten hinzuzufügen, aber alles, was das tat, ist, das OOME hinter eine InvocationTargetException
zu verschieben.
Hier ist mein build.gradle
Block für die compileScala
Aufgabe:
compileScala {
options.fork = true
options.forkOptions.jvmArgs = ['-XX:MaxPermSize=512m']
scalaCompileOptions.additionalParameters = [
"-feature",
"-language:reflectiveCalls", // used for config structural typing
"-language:postfixOps"
]
}
Ich weiß, ich kann global dieses Problem umgehen, indem zunehmenden PermGen Raum $JAVA_OPTIONS
, aber ich würde eine Lösung bevorzugen, die ich mit der Quelle eines Check-in Damit niemand etwas anpassen muss, um das Projekt zu erstellen.
FWIW, ich benutze Gradle 1.11 mit Scala 2.10.3 unter Java 1.6.0_65 auf Mac OS 10.9.3.
'ScalaCompile # Optionen' sind die Java-Kompilierungsoptionen für die Scala/Java-Kompilierung. 'javaOptions' wäre ein besserer Name gewesen. –
Ich fragte mich, ob das der Fall war. –