Scala 在IntelliJ ClassNotFoundException中运行测试
我尝试了许多不同的运行配置,但无论我做什么,在IntelliJ for scala中运行specs2测试时都会出现此异常 它总是找不到以Scala 在IntelliJ ClassNotFoundException中运行测试,scala,testing,intellij-idea,specs2,Scala,Testing,Intellij Idea,Specs2,我尝试了许多不同的运行配置,但无论我做什么,在IntelliJ for scala中运行specs2测试时都会出现此异常 它总是找不到以$符号结尾的类。我检查过了,实际上没有这样的类文件。有AppControllerIT.class和许多类似AppControllerIT$innerFunctionOrclass.clas的类,但没有AppControllerIT$.class 有什么想法吗 谢谢 com.haha.market.api.e2e.controllers.AppController
$
符号结尾的类。我检查过了,实际上没有这样的类文件。有AppControllerIT.class和许多类似AppControllerIT$innerFunctionOrclass.clas的类,但没有AppControllerIT$.class
有什么想法吗
谢谢
com.haha.market.api.e2e.controllers.AppControllerIT$
java.lang.ClassNotFoundException: com.haha.market.api.e2e.controllers.AppControllerIT$
STACKTRACE
java.net.URLClassLoader.findClass(URLClassLoader.java:381)
java.lang.ClassLoader.loadClass(ClassLoader.java:424)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
java.lang.ClassLoader.loadClass(ClassLoader.java:357)
org.specs2.reflect.Classes$$anonfun$loadClassEither$1.apply(Classes.scala:140)
org.specs2.reflect.Classes$$anonfun$loadClassEither$1.apply(Classes.scala:140)
org.specs2.control.ActionT$$anonfun$safe$1.apply(ActionT.scala:89)
org.specs2.control.ActionT$$anonfun$reader$1$$anonfun$apply$6.apply(ActionT.scala:80)
org.specs2.control.Status$.safe(Status.scala:100)
末尾带有
$
符号的类是从编译的Scala对象生成的。这意味着您可能定义了一个类似以下内容的对象:
package com.haha.market.api.e2e.controllers
object AppControllerIT {
}
从您的错误来看,似乎是旧的编译工件或库(?)正在污染您的类路径。首先,尝试清理项目(
mvn clean
或sbt clean
)。接下来,尝试清理IntelliJ内项目中的所有库。IntelliJ有时会缓存同一库的多个版本,这可能会在运行时造成混乱。要清理这些库,请转到IntelliJ中的“文件->项目结构”,手动删除您可能拥有的任何重复库 你试过清理和重建一切吗?你所有的资料都在整理吗?这确实是一个奇怪的错误。@DanielL.,是的,他尝试过清理所有东西并重建——没有任何帮助。这确实是一个IntelliJ问题,因为测试是有效的,如果我在命令行中键入mvn test,那么我什么也得不到。我会尝试不同的SDK只是为了好玩,可能会通过小步删除和重新添加功能:-(