特定のタスクで SBT プラグイン (AutoPlugin) を無効にする方法はありますか。
たとえば、パッケージ化中にプラグイン SCoverage を無効にしたいと考えています。
私が試した:
coverageEnabled in `package` := false
しかし、それはうまくいきません。そこで、プラグインを完全に無効にする方法を探します。
特定のタスクで SBT プラグイン (AutoPlugin) を無効にする方法はありますか。
たとえば、パッケージ化中にプラグイン SCoverage を無効にしたいと考えています。
私が試した:
coverageEnabled in `package` := false
しかし、それはうまくいきません。そこで、プラグインを完全に無効にする方法を探します。
いいえ。タスク (この場合はpackageBin
タスク) が実行されるまでに、タスクの依存関係グラフはすべての自動プラグインから読み込まれ、各設定/タスクはそれがプラグインからのものかどうかを認識しません。一般に、今日 (0.13.9) の時点で、sbt でプラグインを動的に有効または無効にすることはできません。
一部のプラグインは、一部の動作 (たとえば、test in assembly
) をオーバーライドするために拡張ポイントを追加する場合がありますが、 などの組み込みタスクpackageBin
はプラグインを認識しません。
ここに関係があるかもしれないbuild levelという概念を提案しようとしましたが、うまくいきませんでした。