【发布时间】:2016-05-30 09:54:35
【问题描述】:
我有一个多项目包含一个私有宏子项目,其用途仅限于实现其他子项目的方法体。它也不应该在其他子项目的运行时类路径上,也不应该以任何形式在其他子项目的已发布 POM 中可见。这样其他 sbt 项目就可以在不知道宏子项目的情况下使用该项目中的库。
对于外部依赖,我发现这个SO Q&A 工作得很好,但是对于子项目,当我尝试做与dependsOn 类似的事情时,sbt 抱怨找不到配置“compileonly”。
ivyConfigurations += config("compileonly").hide
val macro = Project("macro", file("macro"))
val lib = Project("lib", file("lib")).dependsOn(macro % "compile->compileonly")
【问题讨论】:
标签: scala sbt dependency-management scala-macros