我的任务是将一个旧的ant构建脚本重写为SBT。碰巧,我们的套件由3个模块组成:多模块Scala Play 2.3 conf位置
- A Play 2.3前端Web服务器;
- 用于从各种其他系统检索数据的后端;
- 一个中间模块,包含一些用于数据库访问和业务逻辑的共享类。
下面我Build.scala文件的摘录,可以发现:
val sharedSettings = Seq(
organization := <organization here>,
version := "1.2.5",
scalaVersion := "2.11.1",
libraryDependencies ++= libraries,
unmanagedJars in Compile ++= baseDirectory.value/"lib",
unmanagedJars in Compile ++= baseDirectory.value/"src",
unmanagedJars in Compile ++= baseDirectory.value/"test"
)
lazy val middle = project.settings(sharedSettings: _*)
lazy val back = project.settings(sharedSettings: _*).dependsOn(middle)
lazy val front =
project
.enablePlugins(play.PlayScala)
.settings(sharedSettings: _*)
.settings(scalaSource in Compile := baseDirectory.value/"app")
.settings(
routesImport ++= Seq(
"scala.language.reflectiveCalls", // Removes warnings when using multiple routes files
"com.asml.cerberus.front.toolbox.Binders._")
)
.dependsOn(middle % "compile->compile;test->test")
我有我的./front/conf/目录application.conf。不幸的是,如果我现在运行sbt,它会查找./conf/application.conf文件。 (我已经通过移动conf目录对此进行了测试。)
有什么办法可以告诉SBT/Play使用前端模块的conf目录吗?
这是不是真的,因为一个选项我们正在使用一个需要一些初始化的库(我们在Global对象中做的)。当我们运行sbt测试时,这个命令行参数被忽略,因此Global对象不会初始化库。 – irundaia
你如何设置房产?你可以将'build.sbt'加入如下'javaOptions + =“-Dconfig.file =/opt/conf/prod.conf”}“ – moem