2

ライブラリにいくつかのマクロ注釈を追加しました。私のライブラリビルドには、

addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full)

マクロパラダイスを有効にします。

マクロを使用する私のユーザーのプロジェクトでは、scalamacros何らかの形でそれらも含める必要があることを知っています。現在、私のサンプル プロジェクトでは、上記と同じように実行しています。ユーザーがマクロを持ち込むための、より簡潔で複雑でない方法があるかどうか疑問に思っていましたか? たとえば、私がオフにすることができるいくつかの方法はありますcross CrossVersion.fullか? (ユーザーはおそらくクロスコンパイルしていないためです。)

4

1 に答える 1

2

それは本当に簡単なことです。Macro paradise バージョンは、バイナリ バージョン (2.11 など) ではなく、完全な Scala バージョン (2.11.8 など) に対して発行されます。ビルドからのフルがアーティファクト名に追加されるcross CrossVersion.fullことを保証するため、次のように仮定します。scalaVersionscalaVersion := "2.11.8"

addCompilerPlugin("org.scalamacros" % "paradise" % "2.1.0" cross CrossVersion.full)

になる

addCompilerPlugin("org.scalamacros" % "paradise_2.11.8" % "2.1.0")

ビルドに 1 行を含めるようにユーザーに依頼するのは簡単です。

于 2016-12-07T01:07:57.857 に答える