5

Annotation Processor は、通常、注釈を使用してそれらに反応するために使用されることを知っています。ただし、この「反応」に他の注釈の追加が含まれるユースケースがあります。これはプロセッサ内で実行できますか? もしそうなら、どのように?

4

1 に答える 1

2

簡単な答えはyesで、特に何もする必要はありません。

注釈プロセッサは、既存のファイルを変更するためではなく、新しいソース ファイルを作成するために使用されます。したがって、「他のアノテーションを追加する」と言うときは、「アノテーションを保持する新しいクラスを作成する」ことを意味していると思います。

アノテーション処理はラウンドで行われます。各ラウンドで、注釈プロセッサのプロセスメソッドが呼び出されます。

プロセッサが新しいソース ファイルを生成すると、別のラウンドの注釈処理が開始されます

  • 新しく生成されたソース ファイルは解析され、注釈は以前と同様に処理されます
  • 前のラウンドで呼び出されたプロセッサは、後続のすべてのラウンドでも呼び出されます

つまり、基本的には、何もする必要がなく、すでに機能しています ;-) .

于 2011-06-17T08:09:43.927 に答える