参考"孩子"来自"父母的项目"在sbt

时间:2014-08-10 05:41:20

标签: scala sbt

我正在为sbt编写插件,比如sbt-assembly,sbt-pack等。我希望得到项目间的依赖关系(internalDependencyClasspathprojectDependencies)并调用package任务在这个项目上并获得生产工件的路径。如何在其他项目上调用package任务?如何从“父”项目中获得对“子”项目的引用?

1 个答案:

答案 0 :(得分:2)

你可以看看sbt-native-packager是如何做到的那样

https://github.com/sbt/sbt-native-packager/blob/763c1c837e2f78d00cbfe54fdd07377bb21f9e70/src/main/scala/com/typesafe/sbt/packager/archetypes/JavaApp.scala#L167

您确定此插件无法满足您的需求吗?对我来说,它有助于使用内部运行脚本构建.tgz存档。

以前我也使用过你提到的插件,但由于构建时间过长而丢弃了第一个(sbt-assembly),并且实际上并不想将所有内容合并到单个jar中,而第二个(sbt-pack)因为它没有& #39;正确解决传递依赖关系(至少在此之前)并放入大量重复项。