我在指向 SBT 中 Scala 源文件的自定义目录时遇到了很多麻烦。
我希望 sbt 从给定目录而不是常规src/main/scala
目录编译 scala 文件。
我已经尝试定义 .sbt 和 .scala 项目文件,设置baseDirectory
, scalaSource
(和.scala 文件中的scalaSource
s)。我还玩弄了从系统绝对路径到相对路径的所有内容,但似乎没有任何效果。它无法在指定目录下找到任何 .scala 文件。
处理此问题的正确方法是什么?
在build.sbt试试这个:
scalaSource in Compile <<= (sourceDirectory in Compile)(_ / "foo")
这将为 Scala 源代码生成一个目录src/main/foo。如果要使用任意目录,请执行以下操作:
scalaSource in Compile := file("/Users/heiko/tmp")
更新 SBT 0.13.13 的答案 ->
sourceDirectory in Compile := (baseDirectory( _ / "foo" )).value
并为 SBT 0.13.13 添加源目录(而不仅仅是替换它)->
unmanagedSourceDirectories in Compile += (baseDirectory( _ / "foo" )).value