2011-07-24 38 views
4

我有一个项目foo有两个孩子foo-core和foo-cli,foo-cli依赖于foo-core (我来自Java/Maven并试图用2个子模块体系结构转置父模块)。 继https://github.com/harrah/xsbt/wiki/Full-Configuration,我写了我的项目/ Build.scala这样:库依赖sbt Build.scala完整配置与子项目

import sbt._ 
import Keys._ 

object MyBuild extends Build { 
     //Dependencies 
     val slf4s = "com.weiglewilczek.slf4s" %% "slf4s" % "1.0.6" 
     val slf4j = "org.slf4j" %% "slf4j-simple" % "1.5.6" 
     val grizzled = "org.clapper" %% "grizzled-slf4j" % "0.5" 
     val junit = "junit" % "junit" % "4.8" % "test" 
     //End dependencies 

    lazy val root : Project = Project("root", file(".")) aggregate(cli) settings(
    mainClass:= Some("Main") 
) 

    lazy val core : Project = Project("core", file("core"), delegates = root :: Nil) settings(
    name := "foo-core", 
    libraryDependencies ++= Seq(grizzled) 

    ) 

    lazy val cli: Project = Project("cli", file("cli")) dependsOn(core) settings(
    name := "foo-cli", 
    libraryDependencies ++= Seq(grizzled) 
    ) 
} 

此配置不起作用:当我运行SBT重装斑白库未dowloaded; SBT +更新(如http://software.clapper.org/grizzled-slf4j/所示),因此当我编译时,“import grizzli._”在我的核心和cli项目中失败。

由于我是新来斯卡拉/ SBT我想象我在做什么可怕,但找不出为什么,因为我很困惑与被建议所有SBT 0.7/sbt0.10冲突的配置 (如Subproject dependencies in SBT) 。

有什么想法?提示可以帮助我吗?

在此先感谢

回答

2

那斑白的,不是你正在使用的依赖grizzli。进口是:

import grizzled._ 

这个作品在这里从consoleproject cliproject core,有什么比上面的配置文件的详细。

您使用的是SBT 0.10吗?

+0

哦,对,我很愚蠢,它不是灰熊(嗡嗡声)。尽管如此,我有一个借口,这个库的文档没有写得很好,并且在使用Logging特性时没有指出要导入什么,提取库jar告诉我我应该导入'grizzled.slf4j._'而不是'灰色。 _'。 无论如何谢谢你 – jolivier