无法在 eclipse (scala-ide) 项目中导入 Specs2

Not able to import Specs2 in eclipse (scala-ide) project

如果我遗漏了一些非常愚蠢的东西,请反对ider,我对此很陌生。

在 Eclipse (Scala-ide) 上创建 this 示例。当我创建 CorrelationJobTest.scala class 时,从 specs2 包导入 classes 时出现问题。

import org.specs2.runner.JUnitRunner

我遇到的错误非常明显,

object specs2 is not a member of package org

即使在创建 build.sbt 文件、添加依赖项并执行 sbt clean 之后,错误仍然存​​在。 下面是我的 build.sbt

name := "SparkCorrelation"

organization := "com.xyz"

version := "0.1"


/* scala versions and options */
scalaVersion := "2.10.4"

// These options will be used for *all* versions.

javacOptions ++= Seq("-Xlint:unchecked", "-Xlint:deprecation")
scalacOptions ++= Seq("-feature", "-unchecked", "-deprecation")

/* dependencies */
libraryDependencies ++= Seq("org.specs2" %% "specs2-core" % "3.7" % "test")

scalacOptions in Test ++= Seq("-Yrangepos")

编辑: 我也遇到了 apache.spark 包的这个问题。然后我包含了 jar spark-assembly-1.6.0-hadoop-2.6.0.jar 并且它得到了解决。没有我可以在 Eclipse 中导入的 specs2 库吗?

您需要将 junit 模块添加到您的依赖项中

libraryDependencies ++= Seq(
  "org.specs2" %% "specs2-core" % "3.7" % "test",
  "org.specs2" %% "specs2-junit" % "3.7" % "test")

成功了。这是我所做的:

  1. 从 eclipse 中删除了项目
  2. 做过sbt eclipse
  3. 再次将项目导入eclipse。
  4. build.sbt
  5. 中添加了依赖项
  6. 做过sbt clean

问题是项目是直接在eclipse中创建的,无法link到sbt构建文件。