我有以下sbt代码在git uri上添加插件依赖项:
import sbt._
object Plugins extends Build {
lazy val username = ("git config --global user.bitbucket" !!).trim
lazy val root = Project("root", file(".")) dependsOn(
uri(s"https://$username@git-repo.org/team/build.git#build_0.1")
)
}
Run Code Online (Sandbox Code Playgroud)
这工作正常,但我发现,如果我进行更改build_0.1并推送它,当我compile再次来到项目时,sbt不会提取我所做的更改,所以我有一个过时的插件.
我怎样才能让SBT始终对它依赖的依赖关系做一个git pull?
我有一个非常简单的配置:
//lazy val bananaRdfProject = RootProject( uri("git://github.com:stample/banana-rdf.git#"+bananaGitBranch) )
// lazy val bananaRdfProject = RootProject( uri("https://github.com/stample/banana-rdf.git#"+bananaGitBranch) )
// lazy val bananaRdfProject = ProjectRef( uri("https://github.com/stample/banana-rdf.git#"+bananaGitBranch) ,"banana-rdf")
lazy val bananaRdfProject = RootProject( file("../banana-rdf") )
lazy val main = play.Project(appName, appVersion, appDependencies).settings(...)
.dependsOn( bananaRdfProject )
Run Code Online (Sandbox Code Playgroud)
我尝试使用上面4个不同的项目声明bananaRdfProject.
由于我可以在本地编辑这个banana-rdf,我希望每次构建我的play项目时都要重新编译它,这样我就不必发布banana-rdf ...
但是当我尝试编译我的主要游戏项目时,它使用banana-rdf,它不编译banana-rdf,而是尝试编译主项目:编译失败,因为类路径中缺少banana-rdf类.
sebastien@clemence-XPS-L412Z:rww-play (master *%)$ ./play.old/play
[info] Loading project definition from /home/sebastien/Bureau/rww-play/project
[warn] there were 1 deprecation warning(s); re-run with -deprecation for details
[warn] one warning found
[info] Loading project definition from /home/sebastien/Bureau/banana-rdf/project
[info] Updating {file:/home/sebastien/Bureau/banana-rdf/project/}banana-rdf-build...
[info] …Run Code Online (Sandbox Code Playgroud)