我正在使用OTHER_HOME
环境变量来指向不同的SBT项目目录。我将把外部目录放在maven存储库中或通过github.com #tag项目引用,但是现在我想将一个基于文件的依赖项添加到Play项目中。
我的工作方式是Build.scala
:
val otherProjectDir = Option(System.getenv("OTHER_HOME"))
.getOrElse("Set environment OTHER_HOME to your 'other' git clone")
// take the core sublibrary from other project
val otherCore = ProjectRef(file(otherProjectDir), "core")
val main = play.Project(appName, appVersion, appDependencies)
.dependsOn(otherCore)
我想切换到build.sbt
,但我不知道如何做到这一点。请指教。
答案 0 :(得分:0)
看起来游戏有办法操纵他们的“监视服务”(监视文件的变化)。尝试将此添加到build.sbt
以使重新加载等待一小时(或者您想要多长时间):
PlayKeys.fileWatchService := play.runsupport.FileWatchService.sbt(3600000)
见这里:https://www.playframework.com/documentation/2.4.x/Migration24#playWatchService-renamed
如果你想完全禁用它,你应能够创建自己的FileWatchService
实例并设置上面的密钥以使用你的自定义观察者(并使你的服务做到没有)。类似的东西:
PlayKeys.fileWatchService := new FileWatchService {
def watch(filesToWatch: Seq[File], onChange: () => Unit): FileWatcher =
new FileWatcher {
def stop(): Unit = ()
}
}
请注意,我尚未测试此代码段,但您可以在此处查看FileWatchService
的来源以供参考:https://github.com/playframework/playframework/blob/master/framework/src/run-support/src/main/scala/play/runsupport/FileWatchService.scala#L23