2017-03-07 3 views
0

私は外部パッケージにアクセスしたいタスクを持っています(そのパッケージの特定の特性を拡張するすべてのクラスを見つけるためにリフレクションを実行する)SBT sub/build.sbtタスクのルート/ build.sbtのインポート依存性

パッケージは、すべてのサブプロジェクトに設定されている他のすべての依存関係に沿って、親プロジェクトに定義されています。

ので、同じように:

ルート/ build.sbt:

val scalaCss = "com.github.japgolly.scalacss" %% "core" % "0.5.1" 

lazy val subproject = (project in file("subproject")) 
... 
.settings(
... 
, libraryDependencies += scalaCss) 

サブプロジェクト/ build.sbt

lazy val myAwesomeTask = TaskKey[Unit]("myAwesomeTask") 

myAwesomeTask := { 
    import scalaCss.Defaults._ 
    val standalones = typeOf[scalacss.internal.mutable.StyleSheet.Standalone.Standalone] 
    } 

css.Defaults._は私がいることを変更するにはどうすればよい

を解決することはできませんそれで、それはタスクで利用可能になりますか?

サブプロジェクトのbuild.sbtに特定のタスクを指定したいが、そこに依存関係は入れない。

サブプロジェクト自体は既にroot/build.sbtで定義されているため、ここで別の依存関係を指定する方法はありません。 root/build.sbtを何とかsubproject/build.sbtにインポートできますか?

+0

は私の提案を助けましたか? – Sheinbergon

答えて

1

ないそれがうまくいくことを確認していますが、別のDEFファイルでの一般的な設定を入れて試してみて、その後、(ビルドファイルの両方から)これを試すことができます。

val sub = Project(id = "sub" , base = file(".")).addSbtFiles("<path/to/common.sbt>")

関連する問題