我是 sbt-assembly 的长期和快乐用户,但是在新项目中使用 SBT 0.13.0 和 sbt-assembly 0.10.1 时遇到了问题。
我以前使用过这样的代码:
import sbtassembly.Plugin._
import AssemblyKeys._
lazy val sbtAssemblySettings = assemblySettings ++ Seq(
// Slightly cleaner jar name
jarName in assembly <<= (name, version) { (name, version) => name + "-" + version + ".jar" }
)
lazy val buildSettings = ... ++ sbtAssemblySettings
在以前版本的 SBT/sbt-assembly 中,这对我来说效果很好,但我现在遇到了错误:
type mismatch;
[error] found : String
[error] required: sbt.Task[String]
[error] jarName in assembly <<= (name, version) { (name, version) => name + "-" + version + ".jar" }
[error] ^
[error] one error found
为了完整起见:完整的项目可在此处获得。
我不禁想知道这个问题是否与SBT 0.13.0中的新任务/设置语法有关:
首先,仍然支持旧语法,目的是允许您在闲暇时转换为新语法。可能存在一些不兼容性,有些可能是不可避免的,但请报告您在现有版本中遇到的任何问题。
任何帮助都感激不尽!