2014-04-18 2 views
2

최근 스칼라 IDE 3.0.3 (기본적으로 스칼라 플러그인 이클립스 케플러)을 설치하기로 결정했습니다. 최신 사양 (specs2_2.10-23.11), scalaz (2.10-7.0.4), collection (scalaj-collection_2.10-1.5) 및 scala 라이브러리 [2.10.4]스칼라 IDE (Eclipse Kepler)에서 JUnit 테스트를 실행할 때 java.lang.NoClassDefFoundError

테스트를 실행하려고했습니다. "스칼라 JUnit 테스트"를 사용하여 스칼라에서이 오류가 발생했습니다.

java.lang.NoClassDefFoundError: scalaz/concurrent/Strategy$ at org.specs2.reporter.DefaultExecutionStrategy$$anonfun$execute$1$$anonfun$2.apply(ExecutionStrategy.scala:43) at org.specs2.reporter.DefaultExecutionStrategy$$anonfun$execute$1$$anonfun$2.apply(ExecutionStrategy.scala:41) at scala.collection.LinearSeqOptimized$class.foldLeft(LinearSeqOptimized.scala:111) at scala.collection.immutable.List.foldLeft(List.scala:84) at org.specs2.reporter.DefaultExecutionStrategy$$anonfun$execute$1.apply(ExecutionStrategy.scala:41) at org.specs2.reporter.DefaultExecutionStrategy$$anonfun$execute$1.apply(ExecutionStrategy.scala:38) at scalaz.syntax.IdOps$class.$bar$greater(IdOps.scala:15) at scalaz.syntax.ToIdOps$$anon$1.$bar$greater(IdOps.scala:78) at org.specs2.reporter.JUnitReporter$class.report(JUnitReporter.scala:44) at org.specs2.runner.JUnitRunner$$anon$4.report(JUnitRunner.scala:43) at org.specs2.runner.JUnitRunner.run(JUnitRunner.scala:50) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)

Caused by: java.lang.ClassNotFoundException: scalaz.concurrent.Strategy$ at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 17 more

그 원인은 무엇입니까? 나는 아마 뭔가를 놓친다. 그러나 나는 무엇을 발견 할 수 없다.

내 테스트는 gradle로 잘 실행됩니다.

+0

프로젝트를 생성하기 위해'eclipse' gradle 플러그인을 사용 했습니까? 그렇다면'spec2'의 추가는 원래 프로젝트를 생성 한 후에 발생 했습니까? 프로젝트의'Reference Libraries' 섹션 아래에 그 항아리가 보입니까? – n0741337

+0

나는 그다지 쓸모가 없으므로이 섹션에서 그 항아리들을 보았습니다 :/ – ojciecmatki

+0

'User Entries' 섹션 아래 테스트의 실행 구성 클래스 패스 탭 아래에 그 항아리가 보이십니까? – n0741337

답변

1

누군가가 도움이 될 것입니다. 나는 해결책을 찾는다 : 나는 scalaz-core에 명백하게 포함되지 않는 scalaz-concurrent 단지를 놓쳤다. 작동하려면 coreconcurrent의 동일한 버전이 필요합니다.

관련 문제