【问题标题】:ScalaTest needed settings with multi-project sbtScalaTest 需要使用多项目 sbt 的设置
【发布时间】:2020-10-22 01:52:57
【问题描述】:

我也不能运行测试,因为它们中的任何一个都被检测到了,当编译器抱怨时,我解释说当我在核心中交互式运行 sbt 时,我无法从 /core/src/test 中的 /core/src/main 导入类项目。

这是我正在使用的基本配置。

文件夹组织

|
| build.sbt
|
|-------------- core | src ------------| main | scala | files...
|                    | build.sbt       | test | scala | files...
|
|-------------- proj1 | src ----------- | main | scala | files...
|                     | build.sbt       | test | scala | files...

这里有点和平。sbt


lazy val deps = Seq(
    "org.scalactic" %% "scalactic" % "3.1.2",
    "org.scalatest" %% "scalatest" % "3.1.2" % "test"
)

lazy val coreDeps = libraryDependencies ++= deps


lazy val core = (project in file("core"))
   .settings(coreDeps)

lazy val proj1 = (project in file("proj1"))
  .settings(coreDeps)
  .dependsOn(core)

【问题讨论】:

    标签: scala sbt scalatest


    【解决方案1】:

    问题来自 coreproj1 下的 build.sbt 文件,一旦我删除它们,一切正常。

    【讨论】:

      【解决方案2】:

      您只需要按照评论中的说明进行操作:使用settings 方法应用设置:

      lazy val core = (project in file("core"))
        .settings(
          libraryDependencies ++= Seq(
            "org.scalactic" %% "scalactic" % "3.1.2",
            "org.scalatest" %% "scalatest" % "3.1.2" % "test"
          )
        )
      
      lazy val proj1 = (project in file("proj1"))
        .settings(
          libraryDependencies ++= Seq(
            "org.scalactic" %% "scalactic" % "3.1.2",
            "org.scalatest" %% "scalatest" % "3.1.2" % "test"
          )
        )
      

      或者,您可以将libraryDependencies 键的范围限定为ThisBuild。然后会在所有子项目中继承:

      ThisBuild / libraryDependencies ++= Seq(
        "org.scalactic" %% "scalactic" % "3.1.2",
        "org.scalatest" %% "scalatest" % "3.1.2" % "test"
      )
      
      lazy val core = (project in file("core"))
      lazy val proj1 = (project in file("proj1"))
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-09-18
      • 2014-06-05
      • 2015-01-02
      • 2020-01-31
      • 1970-01-01
      • 1970-01-01
      • 2015-02-26
      相关资源
      最近更新 更多