M2e 1.0が正しく機能するように、ライフサイクルマッピングを指定する必要がありました。
<pluginManagement>
<plugins>
<plugin>
<groupId>org.Eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<versionRange>[2.0.2,)</versionRange>
<goals>
<goal>process</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
しかし、私はこの警告を受け取ります:
[WARNING] The POM for org.Eclipse.m2e:lifecycle-mapping:jar:1.0.0 is missing, no dependency information available
[WARNING] Failed to retrieve plugin descriptor for org.Eclipse.m2e:lifecycle-mapping:1.0.0: Plugin org.Eclipse.m2e:lifecycle-mapping:1.0.0 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.Eclipse.m2e:lifecycle-mapping:jar:1.0.0
たとえば、特定のMavenタスクを実行すると、mvn clean install findbugs:findbugs
(実行するのがmvn clean install
その後、そのようなメッセージはありません)
問題は、このPOMが存在しないことです。これは、マッピング情報を保持するためにのみ定義されているためです。 ( m2eライフサイクルマッピングが見つかりません )
とにかく、警告なしでビルドをきれいに保ちたいので、この特定のものをどのように取り除くことができますか? (CIサーバーは警告がないことを確認します。)
私はMaven 3.0.2を使用し、Maven 3.0.3も試しましたが、結果は同じです。
私のチームは、関連する構成をプロファイルにラップすることにより、この問題を回避しています。
<profile>
<id>only-Eclipse</id>
<activation>
<property>
<name>m2e.version</name>
</property>
</activation>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.Eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
...
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
これは 既知のバグ with[〜#〜] wontfix [〜#〜]解像度です。提案された解決策は私の意見では最も簡単です:
mvn archetype:generate -DgroupId=org.Eclipse.m2e -DartifactId=lifecycle-mapping \
-Dversion=1.0.0 -DarchetypeArtifactId=maven-archetype-mojo
およびinstall
このプロジェクト。
このソリューションは非推奨になりました。受け入れられた答えである@ctruedenによる「プロファイル」ソリューションの使用をお勧めします!
最もクリーンなソリューションではありませんが、会社でリポジトリマネージャーを使用している場合、または自分で作業している場合は、その間に次の操作を実行できます。-チェックアウト https:// github。 com/mfriedenhagen/dummy-lifecycle-mapping-plugin 。 -mvn install
自分でいるとき-mvn deploy -DaltDeploymentRepository=REPO_ID::default::YOUR_THIRDPARTY_REPO_URL
NexusやArtifactoryなどのリポジトリマネージャーがある場合。 - https://github.com/mfriedenhagen/dummy-lifecycle-mapping-plugin/blob/master/README.creole も参照してください。
よろしくミルコ
m2Eclipse 1.7.0は、代替手段、つまりXML処理命令を導入しました。
元の例では、すべての<execution>
のmaven-processor-plugin
’process
の目標
<?m2e execute?>
構文およびその他のオプションの詳細については、 リリースノート を参照してください。
より良い解決策があります(Eclipseのエラーメッセージのみ)。
押す CTR+1 エラー時ライフサイクル設定でカバーされないプラグインの実行:org.codehaus.mojo:buildnumber-maven-plugin:1.1:create-timestamp(execution:default-create-timestamp、phase:validate)その後このオプションを選択してください:
これはorg.Eclipse.m2e.editor.xml_1.2.0.20120903-1050.jar
プラグイン(おそらく以前も)