有没有办法只将SBT的解析器用于工件的子集?

时间:2014-09-10 16:01:15

标签: scala sbt

有没有办法定义仅用于工件子集的自定义解析器,更具体地说,只能使用预定义的groupId来获取工件?

例如,项目定义了一个自定义FooResolver,它只应用于groupId org.foo的工件,但所有其他工件都应使用默认解析器解析。

1 个答案:

答案 0 :(得分:1)

要将非托管依赖项添加到SBT项目,最简单的解决方案是将jar放在项目的lib文件夹中。默认情况下,lib文件夹中的所有库都将位于类路径中。

如果您想使用其他文件夹而不是lib,则可以重新定义它:

unmanagedBase := // provide a java.io.File here.

如果你想做一些更复杂的事情:SBT使用unmanagedJars任务检索非托管库,这样你就可以随时重新定义该任务(但这可能表明你正在尝试做某事太复杂,无法合理地使用非托管依赖项......)。