播放框架共享子项目中未找到的公共变量(模块)

时间:2017-02-22 10:40:06

标签: java scala playframework-2.0 sbt

我有多模块(subProject)项目。有这样的结构

my_app  
|__app  
|__conf  
|__public  
|__project  
|  |__Common.scala  
|__modules  
|  |__admin
|     |__src/test/scala      
|     |__build.sbt  
|  |__product
|     |__src/test/scala      
|     |__build.sbt  
|__build.sbt 

我想在公共场所放置像'Version','organization'这样的公共变量,并希望在所有模块(子项目)之间共享。

因此我使用了这里提到的方法

https://www.playframework.com/documentation/2.5.x/SBTSubProjects

创建my_app / project / Common.scala并在其中添加公共变量,因此将在每个模块中自动提供

Common.scala看起来像这样

import sbt._
import Keys._


object Common {
  val settings: Seq[Setting[_]] = Seq(
    organization := "com.abc",
    version := "1.0-SNAPSHOT"
  )
}

他们已经在子项目admin / build.sbt中访问过,如此

name := "admin"

Common.settings

lazy val admin = (project in file("."))
  .enablePlugins(PlayJava, PlayEbean, GitVersioning, BuildInfoPlugin, DebianPlugin)

libraryDependencies ++= Seq(
  javaJdbc,
  cache,
  evolutions,
  filters,
  javaWs,
  "junit" % "junit" % "4.12" % "test"
)

在admin / build.sbt中找不到“Common.settings”,其读取下划线。(见图片)

enter image description here

请帮助,如何在admin / buil.sbt中提供“Common.setting”。

IDE:Intellij

0 个答案:

没有答案