2013-10-15 7 views
5

私はeclipse Keplerを使用しており、コンパイラはJava 7を使用するように設定されています。クラスパス(mavenコンテナ内)にJSR269準拠の注釈プロセッサがあります。JSR269 annotaionプロセッサをJava 7&Mavenを使用してEclipse Keplerで実行する方法

このアノテーションプロセッサを実行する最も簡単な方法は何ですか?

実際には、JSR 269に準拠しているため、Eclipseコンパイルでビルド中にこの注釈プロセッサを自動的に実行することが期待されますが、そうではありません。パフォーマンス上の理由からそれはなぜですか?

注:コマンドラインからのmavenビルドはうまく動作します。

これは、Projectプロパティ(Javaコンパイラ - 注釈処理 - ファクトリパス)で設定できることがわかりました。ここで問題となるのは、クラスパス(Mavenコンテナ内)にすでにある注釈プロセッサの.jarファイルを使用したいということです。どのように私はそれを参照することができますか?私はそれをする方法を見つけませんでした。

私が思いついた最高のM2_REPO変数を使用し、手動でそのようにプロセッサへのパスを追加することです:

M2_REPO/com/gwtplatform/gwtp-processors/1.0.1/gwtp-processors-1.0.1.jar 

これは明らかに、プロセッサは、現在2ヶ所に指定されている問題があります。 maven pomファイルとeclipseプロジェクトにあります。これを避ける方法は?

答えて

4

注釈処理のためにEclipseプロジェクトを自動的に構成するm2eコネクタが必要です。

使用するm2eコネクタは、Maven側でどのようにアノテーション処理を設定したかによって異なります。注釈プロセッサーを見つけるためにmaven-compiler-pluginに頼っている場合、またはそのためにmaven-annotation-pluginを設定している場合は、m2e-apt by JBossというコネクターを使用できます。

m2e-aptは、Eclipseのm2eディスカバリダイアログ(「ウィンドウ」→「設定」→「Maven」→「ディスカバリ」→「カタログを開く」)から簡単にインストールできます。次に、 "Window"→ "Preferences"→ "Maven"→ "Annotation Processing"でコネクターをオンにします。 Mavenプロジェクトを更新(プロジェクトを右クリックし、 "Maven"→ "Update Project ..."を選択)すると、Eclipseプロジェクトの注釈処理が、あなたの質問で説明したダイアログに自動的に設定されます。

関連する問題