3

Maven 3.0.4 プロジェクト内で次の基本的な手順を実行したいと考えています。私はすべての基本を整えており、問題はありませんでしたが、ステップ 3 で問題が発生しています。なんらかの理由で、基本的な解決策は私にはわかりません。

  1. 基本的なクリーン/インストールを実行します (注釈処理なし)
  2. サイト ビルドの実行をリクエストする
  3. サイトのビルドが開始される前に、最初の手順でコンパイルされた注釈プロセッサ クラスを使用して、コンパイルされたクラスで注釈処理を実行します。

アノテーション処理のゴールを次のように設定してみました。

<plugin>
  <groupId>org.bsc.maven</groupId>
  <artifactId>maven-processor-plugin</artifactId>
  <executions>
    <execution>
      <id>process</id>
      <goals>
        <goal>process</goal>
      </goals>
      <phase>pre-site</phase>
      <configuration>
        <outputDirectory>${basedir}/target/generated-documentation</outputDirectory>
        <processors>
          <processor>com.mydomain.MyFancyAnnotationProcessor</processor>
        </processors>
      </configuration>
    </execution>
  </executions>
</plugin>

何らかの理由で、これは機能していないようです。私は何か非常にばかげたことをしているように感じ、それが機能を妨げている.

基本的なMojo Apt Pluginの代わりにMaven Annotation Pluginを使用しています。誰かがそのソリューションで機能するソリューションを持っている場合、切り替えてもかまいません。私は両方を試しましたが、すぐに成功する兆候はありませんでした。繰り返しますが、私が見落としているのは明らかなことのように感じます.

受け取ったエラー:

[INFO] diagnostic error: Annotation processor 'com.mydomain.MyFancyAnnotationProcessor' not found
[ERROR] error on execute: error during compilation
4

1 に答える 1

0

私の推測では、プラグインは現在のプロジェクト自体をクラスパスに含めていません。最善の解決策は、可能であれば注釈プロセッサを独自の(サブ)モジュールに分離することです。それができない場合は、このプロジェクト自体をプラグインの依存関係として追加できる場合があります(<dependencies>プラグインノードの下のセクションを使用)。

診断上の注意として、「-X」引数を指定してMavenを実行し、ビルドに関する詳細情報を確認できます。これにより、プラグインの実行時にクラスパスに何があるかが正確に示されます。

于 2012-07-10T15:14:49.660 に答える