我一直避免使用 SBT,因为 intellij 对 maven 的支持一直都非常出色,而且我认为 SBT 没有太大优势;但我想为什么要与群众作斗争。
所以我的一个开源项目已经转换为 SBT。现在,当我运行测试(大约 1000 个测试用例)时,我得到了 OOM。好的,我试过了
fork in Test := true
javaOptions in Test ++= Seq("-Xmx2048m", "-XX:MaxPermSize=512m")
好的,所以我的 OOM 消失了,但现在我明白了
sbt.ForkMain$Run$RunAborted: java.net.SocketException: Broken pipe
at sbt.ForkMain$Run.write(ForkMain.java:114)
at sbt.ForkMain$Run$1.info(ForkMain.java:132)
好像每次都在不同的地方。
如果我通过 maven(scala test maven 插件)构建,这些测试都会通过。
帮助我 Obi-wan 或 SBT 爱好者。
编辑:添加环境细节
sbt 0.12.4 java 7.25 scala 2.10.2