我想创建一个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中的错误?
答案 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插件。