2015-05-09 74 views
0

我在GitHub上有一個javascript項目和一個scala項目。我希望scala項目簽出js項目並將其打包爲scala項目的資源jar。將外部項目文件打包爲資源jar(SBT)

以下代碼似乎不起作用。

lazy val myJsProj = RootProject(uri(
    // The project will be checkout to ~/.sbt/0.13/staging/089ea13043e2818509b4 
    "https://github.com/foo/bar.git")) 

lazy val root = Project(
    id = "my-scala-proj", base = file("."), 
    settings = Defaults.coreDefaultSettings 
).dependsOn(myJsProj) 

在scala項目目錄中,有一些文件在src/main/resources。現在我運行命令sbt clean package。我注意到只有src/main/resources下的文件被打包在my-scala-proj_2.10-0.1-SNAPSHOT.jar中,但沒有包含我的js項目的文件。

我還發現了一個空罐子~/.sbt/0.13/staging/089ea13043e2818509b4/my-js-proj/target/scala-2.10/my-js-proj_2.10-0.1-SNAPSHOT.jar

我猜dependsOn並不意味着包括對項目中的所有文件?有人能發光嗎?

回答

0

dependsOn將指示構建中的一個項目如何依賴於存儲庫中的另一個項目。

使用RootProjecturi是爲了方便源代碼兼容性,但是它限制了工作的好壞(即libraryDependencies工作更可靠)。

我不知道如何從遠程源包含JavaScript項目的源代碼(通過uri)。我認爲最好看的地方是sbt-web的(sbt)插件。

相關問題