[英]Publish Local generates empty jar in a multi-module SBT project
[英]How to set up multi-module build with reference to external local sbt project?
我刚开始使用Scala和Play,我正在尝试使用sbt 0.13.5设置多个构建。我的项目结构如下:
/AnormCypher
-> /src
->/main
->/scala
->org.anormcypher[package]
->[Some classes]
-> [other dirs/files]
-> build.sbt
/sample
-> /src
->/main
->/scala
->/controllers[package]
->Application.scala
->[Some classes]
-> [other dirs/files]
-> build.sbt
示例项目取决于AnormCypher项目。 我尝试在此SO帖子之后设置依赖项。 我的build.sbt示例如下所示:
name := """sample"""
version := "1.0-SNAPSHOT"
lazy val root = (project in file(".")).enablePlugins(PlayScala)
scalaVersion := "2.11.1"
libraryDependencies ++= Seq(
jdbc,
anorm,
cache,
ws
)
lazy val core = ProjectRef(file("../AnormCypher"), "anormcypher")
val main = root.dependsOn(core)
当我进入我的控制台并输入
activator
sbt能够加载项目。 但是当我尝试编译源代码并尝试使用org.anormcypher包中的类时,它们无法解析:
object anormcypher is not a member of package org
[error] import org.anormcypher._
[error] ^
运行clean compile
也没有带来任何结果。
更改
lazy val root = (project in file(".")).enablePlugins(PlayScala)
至
lazy val root = (project in file(".")).enablePlugins(PlayScala).dependsOn(core)
并删除
val main = root.dependsOn(core)
reload
,项目应该正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.