将基于 Play2.1-RC1 的应用程序部署到 Heroku 时遇到此错误
[info] 'compiler-interface' not yet compiled for Scala 2.10.0-RC1. Compiling...
sbt appears to be exiting abnormally.
The log file for this session is at /tmp/sbt6398446576215517800.log
java.lang.OutOfMemoryError: PermGen space
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
at java.util.concurrent.FutureTask.get(FutureTask.java:111)
at sbt.ConcurrentRestrictions$$anon$4.take(ConcurrentRestrictions.scala:195)
at sbt.Execute.next$1(Execute.scala:85)
at sbt.Execute.processAll(Execute.scala:88)
...
...
Error during sbt execution: java.lang.OutOfMemoryError: PermGen space !
Failed to build app with sbt !
Heroku push rejected, failed to compile Play 2.0 - scala app
build.properties
sbt.version=0.12.1
plugins.sbt 文件
// Comment to get more information during initialization
logLevel := Level.Warn
// The Typesafe repository
resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"
// Use the Play sbt plugin for Play projects
addSbtPlugin("play" % "sbt-plugin" % "2.1-RC1")
Build.scala
导入 sbt._ 导入 PlayProject._
object ApplicationBuild extends Build {
val appName = "myappname"
val appVersion = "1.0-SNAPSHOT"
val appDependencies = Seq(
// Add your project dependencies here,
jdbc,filters,
"org.squeryl" % "squeryl_2.10.0-RC2" % "0.9.5-4",
"postgresql" % "postgresql" % "9.1-901-1.jdbc4"
)
val main = play.Project(appName, appVersion, appDependencies).settings(
// Add your own project settings here
)
}
更新
将 JAVA_OPTS 和 SBT_OPTS 从更改
-Xmx384m -Xss512k -XX:+UseCompressedOops
为
-Xmx1024m -Xss512k -XX:+UseCompressedOops
但再次出现同样的错误。