web-dev-qa-db-ja.com

ライフサイクル設定でカバーされていないプラグインの実行(JBossas 7 EARアーキタイプ)

私はMaven M2E Plugin 1.0.100でEclipse 3.7 Indigoを使っています。

JBoss 7.x JavaEE 6 EARアーキタイプを使用して、EARのポンポンは私にこのエラーを与えています:

プラグインの実行はライフサイクル設定の対象外です:org.Apache.maven.plugins:maven-ear-plugin:2.6:generate-application-xml(実行:default-generate-application-xml、フェーズ:generate-resources)

<plugin>
   <groupId>org.Apache.maven.plugins</groupId>
   <artifactId>maven-ear-plugin</artifactId>
   <version>2.6</version>
   <configuration>
      <!-- Tell Maven we are using Java EE 6 -->
      <version>6</version>
      <!-- Use Java EE ear libraries as needed. Java EE ear libraries 
                  are in easy way to package any libraries needed in the ear, and automatically 
                  have any modules (EJB-JARs and WARs) use them -->
      <defaultLibBundleDir>lib</defaultLibBundleDir>
      <modules></modules>
   </configuration>
<plugin>
123
Oh Chin Boon

これはしばらく前に導入されたM2Eプラグインの「機能」です。これはJBoss EARプラグインと直接の関係はありませんが、他のほとんどのMavenプラグインでも起こります。

pomでプラグインの実行が定義されている場合(maven-ear-plugin:generate-application-xmlの実行など)、ビルドがEclipseで実行されたときの動作をM2Eに指示する追加の構成情報も追加する必要があります。プラグインの実行がM2Eによって無視されたり実行されたりする場合は、インクリメンタルビルドでも実行される必要があります。

「プラグインの実行はライフサイクル設定の対象外です」

より詳細な説明と、このエラーを解決するためにpomに追加する必要がある設定例については、こちらを参照してください。

https://www.Eclipse.org/m2e/documentation/m2e-execution-not-covered.html

137
Jan

とにかく手遅れですが、私の解決策はEclipseのエラーメッセージを右クリックし、そのようなエラーがあるすべてのpomに対してクイックフィックス>>無視を選択することでした。

43
java_newbie

プロジェクトが誤検知のエラーマーカーを継承せずにm2eをより適切に設定できることを思い出させるには、これらのエラーを単に警告に格下げすることをお勧めします。

ウィンドウ - >設定 - > Maven - >エラー/警告 - >プラグインの実行がライフサイクル設定でカバーされていない=警告

14
mgobeil

クリーンアップ直後、つまりポストクリーン(デフォルトはクリーンフェーズ)を実行してみました。これはEclipse Indigoで私のために働きました。ポストクリーンを追加しただけで問題は解決しました。

<executions>
  <execution>
    <configuration>
    </configuration>
   <phase>post-clean</phase>
    <goals>
      <goal>update-widgetset</goal>
    </goals>
  </execution>
</executions> 
12
Charith

私はこのソリューションを適用することでEclipse Kepler 4.3のmaven-antrun-pluginとjaxb2-maven-pluginで同じ問題を解決することができました。 http://wiki.Eclipse.org/M2E_plugin_execution_not_covered# Eclipse_4.2_add_default_mapping
したがって、私の%elipse_workspace_name%/。metadata/.plugins/org.Eclipse.m2e.core/lifecycle-mapping-metadata.xmlの内容は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>
<lifecycleMappingMetadata>
  <pluginExecutions>
    <pluginExecution>
      <pluginExecutionFilter>
        <groupId>org.Apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <versionRange>1.3</versionRange>
        <goals>
          <goal>run</goal>
        </goals>
      </pluginExecutionFilter>
      <action>
        <ignore />
      </action>
    </pluginExecution>
    <pluginExecution>
      <pluginExecutionFilter>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jaxb2-maven-plugin</artifactId>
        <versionRange>1.2</versionRange>
        <goals>
          <goal>xjc</goal>
        </goals>
      </pluginExecutionFilter>
      <action>
        <ignore />
      </action>
    </pluginExecution>
  </pluginExecutions>
</lifecycleMappingMetadata>

*エラーが消えるのを見るためにEclipseを再起動しなければなりませんでした。

2
aeros

Maven Eclipse (m2e)バージョン0.12以降、すべてのMavenライフサイクル目標は、インストール済みのm2e拡張機能にマップする必要があります。この場合、maven-ear-pluginにはマッピングされていない目標default-generate-application-xmlがありました。

ここの指示に従うだけで、マッピングされていないライフサイクル目標を除外できます。

https://wiki.Eclipse.org/M2E_plugin_execution_not_covered

あるいは、Eclipseでエラーメッセージを右クリックしてQuick Fix - > Ignore for every pom with such errorsを選択するだけです。

ライフサイクルの目標を無視するときは注意が必要です。通常、目標は何か役に立つことであり、Eclipseでそれらを無視するように設定すると、重要なビルド手順を見逃すことがあります。マッピングされていないライフサイクル目標のために、Maven Eclipse EARエクステンションへのサポートを追加することも検討したいと思うかもしれません。

1

質問が古すぎるとしても、私はそれがこのエラーになると私はすでにすべてをチェックしたので私のために働いた解決策を共有したいと思います。それは苦痛でした、私は2日間試みることに費やしました、そして最後に解決策は以下の通りでした:

EclipseでM2eプラグインを更新します

きれいにしてそして再び造る

0
William Kinaan

Janの答えで説明されているメカニズムで、私はm2eが "generate-application-xml"という目標を無視するように差し込むように指示しました。これはエラーを取り除き、m2eがapplication.xmlを作成してから機能するようです。

そのため、基本的に、エラーにより、Mavenビルドがm2eプラグインの制御下でEclipse内で実行されるときに、どのメカニズムがapplication.xmlの生成を担当しているのかを判断する必要がありました。そして私達はm2eが担当していることにしました。

<build>
    <plugins>
        <plugin>
            <groupId>org.Apache.maven.plugins</groupId>
            <artifactId>maven-ear-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <version>6</version>
                <defaultLibBundleDir>lib</defaultLibBundleDir>
            </configuration>
        </plugin>
    </plugins>
    <pluginManagement>
        <plugins>
            **<!-- This plugin's configuration is used to store Eclipse m2e settings 
                only. It has no influence on the Maven build itself. -->
            <plugin>
                <groupId>org.Eclipse.m2e</groupId>
                <artifactId>lifecycle-mapping</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <lifecycleMappingMetadata>
                        <pluginExecutions>
                            <pluginExecution>
                                <pluginExecutionFilter>
                                    <groupId>org.Apache.maven.plugins</groupId>
                                    <artifactId>maven-ear-plugin</artifactId>
                                    <versionRange>[2.1,)</versionRange>
                                    <goals>
                                        <goal>generate-application-xml</goal>
                                    </goals>
                                </pluginExecutionFilter>
                                <action>
                                    <ignore></ignore>
                                </action>
                            </pluginExecution>
                        </pluginExecutions>
                    </lifecycleMappingMetadata>
                </configuration>
            </plugin>**
        </plugins>
    </pluginManagement>
</build>
0
StaticNoiseLog

あなたは M2E_plugin_execution_not_covered の内容を理解し、下記のステップに従う必要があります。

  • Eclipseプラグインフォルダーからorg.Eclipse.m2e.lifecyclemapping.defaults jarを選択します。
  • それを解凍して、すべてのpluginExecutionsを見つけることができるlifecycle-mapping-metadata.xmlを開きます。
  • エラーとして表示されているプラ​​グインのpluginExecutionsを<ignore/>タグの下に<action>で追加します。

例:write-project-propertiesエラーの場合は、lifecycle-mapping-metadata.xmlファイルの<pluginExecutions>セクションの下にこのスニペットを追加します。

 <pluginExecution>
    <pluginExecutionFilter>
       <groupId>org.codehaus.mojo</groupId>
       <artifactId>properties-maven-plugin</artifactId>
       <versionRange>1.0-alpha-2</versionRange>
       <goals>
         <goal>write-project-properties</goal>
       </goals>
    </pluginExecutionFilter>
     <action>
       <ignore />
     </action>
   </pluginExecution>
  • JAR内のそのXMLファイルを置き換えます
  • Eclipseのプラグインフォルダ内の更新されたJARを置き換える
  • Eclipseを再起動します

どのプロジェクトでも、今後エラーが発生しないはずです。

0
gowtham