eclipse - ScalaTest Eclipse 插件说 ClassNotFoundException

标签 eclipse scalatest

我有一个 ScalaTest 测试,我试图通过右键单击并单击 run as > ScalaTest File 来通过 Eclipse 运行它。但 Eclipse 告诉我
Exception in thread "main" java.lang.NoClassDefFoundError: scala/Function1 at scala.tools.eclipse.scalatest.launching.ScalaTestLauncher.main(ScalaTestLauncher.scala) Caused by: java.lang.ClassNotFoundException: scala.Function1 at java.net.URLClassLoader$1.run(Unknown Source) 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) ... 1 more
我不知道该怎么办。

我正在使用 Eclipse 的 Scala IDE 版本
版本号:3.0.4-2.11-20140723-2253-Typesafe
版本 4.3.0

我正在使用 Scala 版本 2.11.1
ScalaTest 版本 2.11-2.1.6

我通过 Typesafe Activator 程序获得了 Scala 和 ScalaTest,并从他们的 webapp 生成了 Eclipse 项目定义。 ScalaTest 插件来自 Scala IDE 网站。

最佳答案

我在 4.1.1-vfinal-20150727-1320-Typesafe 中收到此异常Scala IDE Eclipse 4.3.0 的构建.这是由于项目缺少 Scala 库造成的,尽管我将项目创建为 Scala 项目。我必须通过右键单击并选择 Add Scala Library to Build Path 来手动添加 scala 库。

在添加库之前,它看起来像这样:

enter image description here

添加库并运行 ScalaTest 测试后,它看起来像这样:

enter image description here

人们可能会猜到 Scala Library当带有 Scala Nature 的项目时会自动添加是使用 Scala Project Wizard 创建的——至少我做到了。但是,情况似乎并非如此。如果这是一个设计选择,它可能已经完成,因为 Scala Library经常被指定为项目的依赖项,而 IDE 添加的依赖项是不同的版本,导致令人惊讶的行为以及 IDE 对此效果的警告。如果这是基本原理,向导应提示用户做出决定并可能提供智能建议。

关于eclipse - ScalaTest Eclipse 插件说 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25300206/

相关文章:

java - 烦恼 - 如何禁用 Eclipse 类路径条目警告

java - 修复 LWJGL 3 和 Slick-Util 之间的不兼容性

java - TestNG 未在测试套件中运行测试

java - 在 Eclipse 中打开新项目时出错

scala - Sbt 不会运行 ScalaTest 测试

junit - 如何防止 sbt 运行集成测试?

eclipse - 如何在 Eclipse 中将 Spark 添加到 Maven 项目?

scala - Scalacheck 中是否有与 delta 等效的 Junit assetEquals

scala - Scalatest-如何测试println

scala - 如果使用注入(inject),则 PlaySpec 测试类未被拾取