scalatest:对象scalatest不是包组织的成员

scalatest:对象scalatest不是包组织的成员,scala,intellij-idea,sbt,scalatest,Scala,Intellij Idea,Sbt,Scalatest,编辑:如果文件在src/test/scala/tests/中,但不在src/main/scala/mypackage/为什么 我曾尝试过与有几乎相同问题的人讨论的话题的解决方案,但都不起作用 具体而言,我在build.sbt中有以下内容: libraryDependencies ++= Seq( ... "org.scalatest" % "scalatest_2.10" % "2.2.1" % "test", ... 在intellij中,一个类具有: import org.

编辑:如果文件在src/test/scala/tests/中,但不在src/main/scala/mypackage/为什么

我曾尝试过与有几乎相同问题的人讨论的话题的解决方案,但都不起作用

具体而言,我在build.sbt中有以下内容:

libraryDependencies ++= Seq(
   ...
  "org.scalatest" % "scalatest_2.10" % "2.2.1" % "test",
   ...
在intellij中,一个类具有:

import org.scalatest.{BeforeAndAfterAll, Suite}
带有红色的{BeforeAndAfterAll,Suite},所以我猜找到了scalatest

sbt包也不起作用:

对象scalatest不是包组织[error]导入的成员 org.scalatest。{前后,套房}

我已经试过了:

  • sbt清洁更新
  • 重新启动并使intellij的缓存无效
  • 删除。想法/并重新导入
  • libraryDependencies+=“org.scalatest”%”scalatest_2.10“%”2.0“%”test“而不是ogf实际值
  • 键盘上的魔法仪式
什么都不管用

有什么想法吗?

你应该看看:


在您最初的
build.sbt
中,“test”是配置,它意味着scalatest将仅位于测试类路径上,并且主要源不需要它。这通常是库的良好实践,因为用户通常不需要测试依赖项来使用库()

为什么要在src/main中使用scalatest?请从scalatest库依赖项中删除%“test”。只要存在,在编译阶段就不会在类路径中获得所需的条目。您解决了这个问题吗?我也犯了同样的错误。任何建议都会有帮助的。不,对不起,斯里尼瓦西在IntelliJ中与Maven有这个问题。我使缓存失效并重新启动,但没有任何帮助。我重新导入了Maven,它修复了它。在IntelliJ中,从
包视图
切换到
项目视图
,然后你会看到痛苦;)谢谢你的帮助!
src/
  main/
    resources/
       <files to include in main jar here>
    scala/
       <main Scala sources>
    java/
       <main Java sources>
  test/
    resources
       <files to include in test jar here>
    scala/
       <test Scala sources>
    java/
       <test Java sources>
  "org.scalatest" % "scalatest_2.10" % "2.2.1",