1

タスクにセットを追加するプラグインを作成していcompileます。

package myplugin

import sbt._
import Keys._

object MyPlugin extends AutoPlugin {

  object autoImport {}

  override lazy val projectSettings = Seq(
    compile <<= compile.andFinally {
      println("foo")
    }
  )

}

しかし、プロジェクトで使用すると、

Reference to undefined setting:
  *:compile from *:compile ((myplugin.MyPlugin) MyPlugin.scala:10)
     Did you mean compile:compile ?

Compileこれは、( 、Testなど)でコンパイラが定義されているコンテキストで役立つ可能性があります。

に変更compileする(compile in Compile)と問題が解決します。

ただし、コンテキストを明示的にリストすると、一部が省略さScctTestれます (コード カバレッジ用の SCCT プラグインからのもの)。

コンパイルがあるすべてのコンテキストに対してこの操作を定義できる方法はありますか? それとも、ベスト プラクティスに反することをしようとしていますか?

4

0 に答える 0