2014-07-14 16 views
1

這裏它是如何配置爲SBT 0.12.x:的分岔和排序測試在SBT 0.13.x

parallelExecution in test := false 

testGrouping in Test <<= definedTests in Test map { tests => 
    tests.map { test => 
    import Tests._ 
    import scala.collection.JavaConversions._ 
    new Group(
     name = test.name, 
     tests = Seq(test), 
     runPolicy = SubProcess(javaOptions = Seq(
     "-server", "-Xms4096m", "-Xms4096m", "-XX:NewSize=3584m", 
     "-Xss256k", "-XX:+UseG1GC", "-XX:+TieredCompilation", 
     "-XX:+UseNUMA", "-XX:+UseCondCardMark", 
     "-XX:-UseBiasedLocking", "-XX:+AlwaysPreTouch") ++ 
     System.getProperties.toMap.map { 
      case (k, v) => "-D" + k + "=" + v 
     })) 
    }.sortWith(_.name < _.name) 
} 

在遷移到SBT 0.13.x我得到以下錯誤:

[error] Could not accept connection from test agent: class java.net.SocketException: socket closed 
java.net.SocketException: socket closed 
    at java.net.DualStackPlainSocketImpl.accept0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketAccept(DualStackPlainSocketImpl.java:131) 
    at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:398) 
    at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:199) 
    at java.net.ServerSocket.implAccept(ServerSocket.java:530) 
    at java.net.ServerSocket.accept(ServerSocket.java:498) 
    at sbt.ForkTests$$anonfun$mainTestTask$1$Acceptor$2$.run(ForkTests.scala:48) 
    at java.lang.Thread.run(Thread.java:745) 

遷移更改僅爲updates in sbt & plugin versions

是否有任何其他方法來分解和排序Sbt 0.13.x中的測試以克服該異常?

回答

1

適用於Linux和Mac OS。

因爲類路徑長度的限制在Windows

遇到錯誤,防止測試代理實例的啓動與以下錯誤System.err的:

Error: Could not find or load main class sbt.ForkMain