如何使用sbt排除发布包?

时间:2015-01-26 19:47:16

标签: scala sbt

我想发布一个库,它在runnable类中有一些用法示例。当我调用sbt run时,它会找到它们并询问我,找到了我想要的哪些主要类,然后启动它。这很整洁,我希望保持这种行为。但是这些例子使我的Android构建变得复杂(更多的程序配置),所以我不希望它们出现在已发布的文物中。

现在,我完全排除它们,将它放入build.sbt:

excludeFilter in Compile ~= { _ ||
  new FileFilter {
    def accept(f: File) = f.getPath.containsSlice("/examples/")
  } }

然后,当我运行sbt publish-local时,我会在没有示例的情况下获得jar,但是只需输入sbt run,就无法获取库源并查看其工作原理。如何仅从发布中排除示例包,但是仍然可以为本地运行编译它?

1 个答案:

答案 0 :(得分:0)

我建议将示例拆分为另一个子项目。