4 votes

libraryDependencies on sbt Build.scala Full Configuration with sub-projects

J'ai un projet foo avec deux enfants foo-core et foo-cli, foo-cli dépend de foo-core (je viens de Java/Maven et j'ai essayé de transposer l'architecture du module parent avec 2 sous-modules). En suivant https://github.com/harrah/xsbt/wiki/Full-Configuration J'ai donc écrit mon projet/Build.scala de cette façon :

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)
    )
}

Cette configuration ne fonctionne pas : la bibliothèque grizzled n'est pas téléchargée lorsque je lance sbt reload;sbt +update (comme indiqué dans la section http://software.clapper.org/grizzled-slf4j/ ) et donc le "import grizzli._" échoue dans mes projets core et cli lorsque je compile sbt.

Comme je suis nouveau à scala/sbt, j'imagine que je fais quelque chose d'horrible mais je n'arrive pas à comprendre pourquoi puisque je suis confus avec toutes les configurations conflictuelles de sbt 0.7/sbt0.10 qui ont été suggérées (comme Dépendances des sous-projets dans le SBT ).

Une idée ? Un indice qui pourrait m'aider ?

Merci d'avance

2voto

Daniel C. Sobral Points 159554

C'est grizzled, et non grizzli, que vous utilisez comme dépendance. L'importation est :

import grizzled._

Cela fonctionne ici à partir de console sur project cli y project core avec rien d'autre que le fichier de configuration ci-dessus.

Utilisez-vous SBT 0.10 ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X