为多项目中的子项目指定不同版本的sbt?

时间:2013-12-29 13:15:56

标签: scala sbt

我有一个包含几个子项目的多项目。

根项目的project/build.properties包含

sbt.version=0.13.0

事实证明,由于依赖性问题,其中一个子项目仅适用于版本0.12.4

我将build.properties与该版本放在其目录中,但它没有更改此项目的sbt版本。

我该如何正确地做到这一点?它有可能吗?

1 个答案:

答案 0 :(得分:2)

现在,sbt允许同一版本中的项目之间的深层任务级依赖关系。因此,虽然每个项目都有自己的目录,但它们共享一个用于构建的类加载器,它具有所有定义。

这就是你不能拥有的限制版本共享不兼容的版本。

将来可能会删除此限制,但现在我会执行以下操作之一:

  1. 继续使用sbt 0.12.4进行构建
  2. 通过Ivy迁移项目之间的所有通信。使用包装器脚本进行2次构建,该脚本以正确的顺序运行它们。