對於sbt/Scala/Play項目:如何將分類器添加到依賴項並使用git分支名稱進行發佈?
我想使用當前分支名稱並將其添加爲依賴關係分辨率的分類器。如果它不是一個特定的分支,那麼我想默認沒有分類器。
此外,回購應發佈其分支名稱作爲分類。
I.e.如果我在開發分支上,則所有內部依賴關係都應該使用分類器develop
來解決,如果在任何其他分支上,它應該使用不分類器來解決。
也爲publish
,基於分支我想添加分支名稱,如果需要的話。
任何幫助,將不勝感激。
對於sbt/Scala/Play項目:如何將分類器添加到依賴項並使用git分支名稱進行發佈?
我想使用當前分支名稱並將其添加爲依賴關係分辨率的分類器。如果它不是一個特定的分支,那麼我想默認沒有分類器。
此外,回購應發佈其分支名稱作爲分類。
I.e.如果我在開發分支上,則所有內部依賴關係都應該使用分類器develop
來解決,如果在任何其他分支上,它應該使用不分類器來解決。
也爲publish
,基於分支我想添加分支名稱,如果需要的話。
任何幫助,將不勝感激。
我遇到了同樣的問題。
我結束了使用上述方法,即使用:
def branch() = "git rev-parse --abbrev-ref HEAD" !!
和Version:
version := branch + "-0.0.3-SNAPSHOT",
講究,雖然你需要兩個感嘆號,而不是一個(一個返回命令返回碼)。
現在我可以在artifactory中使用它作爲解析器(並在不同分支之間區分)。
請問def
爲您的依賴關係生成ModuleID
如何在libraryDependencies
下使用git rev-parse --abbrev-ref HEAD
?
將build.sbt
構建定義中的以下內容用作柔和啓動。使用show libraryDependencies
打印出添加分支的依賴關係。
def branch() = "git rev-parse --abbrev-ref HEAD" !
def dependency(g: String, m: String, v: String): ModuleID = {
g %% m % s"$v-${branch()}"
}
libraryDependencies += dependency("com.typesafe.akka", "akka-actor", "2.3.4")
您也可以用A GIT plugin for SBT取得相當的成功。
在Play/Build.scala中,我如何獲得最新的SNAPSHOT或最新版本,在gradle世界中,我只使用latest.integration或latest.release。感謝您的幫助! – user2616355
'latest.integration'如[依賴](http://www.scala-sbt.org/0.13.5/docs/Detailed-Topics/Library-Management.html#dependencies)在sbt官方文檔中所述。 –