With the recent issue reported against sbt-cross-building(将.value
宏用于属性时的错误),我想知道sbt 0.13.2和插件的插件的用例是什么?内置的crossScalaVersions
设施是否足够(如Cross-building所述)?
需要在sbt 0.13和sbt中存在sbt-cross-building插件的用例是什么?
答案 0 :(得分:3)
甚至有人谈论将插件合并到sbt母舰中,但是之前的sbt所有者提出了一种机制来交叉发布来自sbt 0.12.4的sbt 0.13插件:
sbtVersion in Global := "0.13.0-RC1"
scalaVersion in Global := "2.10.2"
这很好用,在0.12到0.13跳跃期间,sbt-cross-publishing有点错过了这一波。 sbt-cross-publishing上的一个简洁功能是,您可以创建用于特定sbt版本的自定义Scala源目录。这样就可以使用单个插件代码库,即使从sbt端打破了源代码级兼容性。
横跨sbt版本的交叉构建的概念非常有用,就像跨Scala版本的交叉构建一样。与此同时,部分由于次要版本中的停滞,主要的版本跳跃足够大,我维护的许多插件都需要剪切新版本以利用新的Scala版本,库,DSL语法等。