2013-01-21 8 views
19

もう1つのプラグイン ( "io.spray" %% "sbt-twirl"% "0.6.0")に依存するプラグイン "MyPlugin"を作成します。SBTプラグインが別のプラグインに依存する方法

プラグインは、標準ライブラリとは異なるパススキーム で公開されるため、libraryDependenciesにsbt-twirlを追加するだけで動作しません( )。

MyPluginは直接SBT-トワールを使用していないので、私はまた、間接的にそれを使用しますMyPluginを使用したプロジェクトである 、 プロジェクトをMyPluginするためのプラグイン依存関係としてSBT-トワールを宣言することはできません。

MyPluginは、sbt-twirl がソース(sourceManaged)とコンパイル後に生成された後に実行されるタスクを提供します。

単純だが非理想的なソリューションでは、プラグインの依存関係としてSBT-トワールを宣言する MyPluginを使用してプロジェクトを必要とするだろうが、2つのプラグインは、いくつかの設定(ディレクトリ、バージョンを共有するので、それは DRYないが、等)、 、それらは繰り返され、互換性がなければなりません。

答えて

27

ではなくproject/plugins.sbtbuild.sbtまたはproject/Build.scalaに行くことを除いては、プラグインとしてプラグインを使用するためのものと同じ定義する必要があります:

addSbtPlugin("io.spray" % "sbt-twirl" % "0.6.0") 
+3

私がやった:.settings(addSbtPlugin(「io.sprayを」 % "sbt-twirl"% "0.6.0"))、それが働いた。ありがとう –

+2

これは私が見つけることは驚くほど困難でしたが、解決策はとても簡単でした! –

+0

tks :)それは働いた –

関連する問題