Scala 2.13-编译插件时出错

时间:2019-10-17 16:18:26

标签: scala sbt sbt-plugin scala-2.13

我想创建一个sbt插件

这是我的项目

build.sbt文件:

lazy val root = (project in file(".")).
  settings(
    name := "test-plagin",
    version := "0.1.0",
    organization := "com.test",
    scalaVersion := "2.13.0",
    sbtPlugin := true,
  )

带有任务的主文件

import sbt.{AutoPlugin, TaskKey}

object HelloPlugin extends AutoPlugin {

  object autoImport {
    val sayHello: TaskKey[Unit] = TaskKey("saying hello")
  }

  import autoImport._
  override def projectSettings = Seq(

    sayHello := {
      println("hello")
    }
  )

}

在编译过程中出现错误: java.lang.NoClassDefFoundError:scala / collection / immutable / StringOps 当我将版本更改为2.12.6时-编译成功。 如何修复2.13中的错误?

1 个答案:

答案 0 :(得分:2)

sbt是用Scala 2.12编写的

https://github.com/sbt/sbt/blob/develop/project/Dependencies.scala#L9

https://github.com/sbt/sbt/issues/5032

因此,应将Scala 2.12用于sbt插件。