Scala projemi Gradle ile oluşturmaya çalışırken org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':compileScala'
alıyorum ve --stacktrace
ile Gradle çalıştırırsam, suçluluk java.lang.OutOfMemoryError: PermGen space
olarak görünüyor.Gradle altında Scala derlemesi için PermGen alanını nasıl artırırım?
Derleme görevini başlatmayı ve MaxPermSize
'u çatallı JVM argümanlarına eklemeyi denedim, ancak bunların tümü InvocationTargetException
'un arkasında ODE'yi taşımaktır.
İşte compileScala
görev için benim build.gradle
blok:
compileScala {
options.fork = true
options.forkOptions.jvmArgs = ['-XX:MaxPermSize=512m']
scalaCompileOptions.additionalParameters = [
"-feature",
"-language:reflectiveCalls", // used for config structural typing
"-language:postfixOps"
]
}
ben küresel $JAVA_OPTIONS
kullanarak PermGen alanını artırarak bu geçici bir çözüm biliyorum ama ben kaynağıyla kontrol edebilirsiniz bir çözümü tercih ediyorum Böylece, hiç kimsenin projeyi inşa etmek için yerel olarak hiçbir şeyi kişiselleştirmemesi gerekiyor.
FWIW, Mac OS 10.9.3 üzerinde Java 1.6.0_65 altında Scala 2.10.3 ile Gradle 1.11 kullanıyorum.
'ScalaCompile # options', Scala/Java ortak derlemesi için Java derleme seçenekleridir. javaOptions daha iyi bir isim olurdu. –
Durumun böyle olup olmadığını merak ettim. –