構建過程使用代碼我有一個多項目建立與,比如說,項目A和B(在根build.sbt的示例):SBT:從一個項目中的另一個
lazy val projectA = (project in file("A"))
lazy val projectB = (project in file("B"))
我想使用projectA中的代碼生成一些.java文件,並將它們作爲projectB構建過程的一部分放入projectB中,然後在compileB運行projectB。在projectA中爲此我有一個Scala對象。實質上,我在projectA中有一個編譯器,它生成需要在projectB 之前運行編譯步驟的之前的文件。我已經試過如下:
1)請項目B依賴了projectA:
lazy val projectB = (project in file("B")) dependsOn(projectA):
2)創建項目B /項目/ Build.scala那裏,在我定義了一個任務:
import projectA.somePackage.ourObject
val myTask = taskKey[Unit]("runs before compilation")
myTask := {
ourObject.thatMethod()
}
(compile in Compile) <<= (compile in Compile) dependsOn(myTask)
但是,我無法從projectA中導入這個文件中的東西。我可能試圖以錯誤的方式做到這一點,但我找不到任何教程或示例向我展示如何做到這一點:(
感謝您的評論 - 不幸的是,我真的無法以任何方式,形狀或形式工作。我認爲,我只是不太瞭解SBT,而且我找不到任何*例子。 – Alathon