【发布时间】:2020-05-26 08:06:03
【问题描述】:
我有以下问题:我需要将一个文件写入一个构建目录,其中包含在 sbt 将要构建的项目中定义的内容。
prj
|
|_src/main/scala/FancyScalaFile.scala
|
|_build.sbt
|
|_project/build.properties
这是FancyScalaFile.scala 的样子
object FancyScalaFile {
def extractString: String() = //...
}
有没有办法从build.sbt 调用extractString?
【问题讨论】:
-
没有。您构建的工具无法使用它尝试构建的逻辑...但是,您可以在
project/上拥有一个 Scala 文件,您可以在构建工具上使用它。 -
@LuisMiguelMejíaSuárez 即使在项目建成之后?
-
@LuisMiguelMejíaSuárez 好吧,实际上这是可能的。
-
@LuisMiguelMejíaSuárez 例如,在构建项目和主项目之间共享一些代码对于在下一阶段使用前一阶段生成的代码时的多阶段编程很有用(宏的预编译时替换)并且您想将构建时间用作阶段之一。虽然我肯定不知道实际 OP 的用例。
-
@DmytroMitin 实际上我有一个能够生成文档的 Scala 文件。我想在构建阶段用它来构建一个包含文档的包。