2

プロジェクトが依存しているRootProjectからの推移的な依存関係を解決するためにSBTを適切に構成できないようです。問題はリゾルバのようです。非常にシンプルな構造で複製することができました。コードについては、以下を参照してください。

common内/実行できsbt console、依存関係を解決して使用できます。ただし、proj/内では同じコマンドが失敗します。とUNRESOLVED DEPENDENCIES。しかし、私のedofic snapshotsリゾルバーは、試行されたリゾルバーの中にリストされていません。どういうわけかそれは拾われていません。リゾルバーを手動でBuild.scalaに追加すると機能しますが、これは推移的な依存関係の目的を無効にします。

├── common
│   └── build.sbt
└── proj
    └── project
        └── Build.scala

common / build.sbt

scalaVersion := "2.10.0"

resolvers += "edofic snapshots" at "http://edofic.github.com/repository/snapshots"

libraryDependencies += "com.edofic" % "reactivemacros_2.10.0" % "0.1-SNAPSHOT"

proj / project / Build.scala

import sbt._
import Keys._

object BarBuild extends Build {
  val common = RootProject(file("../common"))

  val main = Project(id = "main", base = file(".")).settings(
    scalaVersion := "2.10.0"
  ) dependsOn common
}

明確にするために、「共通」用に個別のSBT構成を設定し、ローカルで公開したくない-必要に応じてSBTにインクリメンタル再コンパイルを処理させたい。RootProjectはその仕事にとって間違ったツールですか?

4

1 に答える 1