1. ホーム
  2. eclipse

[解決済み] maven-dependency-plugin (目標 "copy-dependencies", "unpack") は m2e ではサポートされていません。

2022-04-27 13:40:40

質問

私はかなり単純なMavenプロジェクトを持っています。

<project>
    <dependencies>
        ...
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>2.4</version>
                <executions>
                    <execution>
                        <id>copy-dependencies</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/dependencies</outputDirectory>
                        </configuration>    
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

しかし、m2eclipseで以下のエラーが発生します。

Description Resource    Path    Location    Type
maven-dependency-plugin (goals "copy-dependencies", "unpack") is not supported by m2e. pom.xml  /jasperreports-test line 60 Maven Project Build Lifecycle Mapping Problem

m2eclipseがこのタスクを"support"していなくても、なぜ気にするのでしょうか?Mavenはサポートしていますし、それが私が本当に気にするすべてです。どうすれば、私のプロジェクトでこのエラーをなくすことができるのでしょうか?

解決方法は?

既知の問題であるようです。m2eに無視するように指示することができます。

オプション 1: pom.xml

の中に以下を追加してください。 <build/> タグを使用します。

<pluginManagement>
<plugins>
    <!-- Ignore/Execute plugin execution -->
    <plugin>
        <groupId>org.eclipse.m2e</groupId>
        <artifactId>lifecycle-mapping</artifactId>
        <version>1.0.0</version>
        <configuration>
            <lifecycleMappingMetadata>
                <pluginExecutions>
                    <!-- copy-dependency plugin -->
                    <pluginExecution>
                        <pluginExecutionFilter>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-dependency-plugin</artifactId>
                            <versionRange>[1.0.0,)</versionRange>
                            <goals>
                                <goal>copy-dependencies</goal>
                            </goals>
                        </pluginExecutionFilter>
                        <action>
                            <ignore />
                        </action>
                    </pluginExecution>
                </pluginExecutions>
            </lifecycleMappingMetadata>
        </configuration>
    </plugin>
   </plugins></pluginManagement>

Maven...を実行する必要があります。-この後、プロジェクトの設定を更新してください。

続きを読む http://wiki.eclipse.org/M2E_plugin_execution_not_covered#m2e_maven_plugin_coverage_status

オプション2:グローバルEclipseオーバーライド

POMファイルの変更を避けるために、Eclipseの設定で無視の上書き設定をワークスペース全体に適用することができます。

このファイルをディスクのどこかに保存してください。 https://gist.github.com/maksimov/8906462

Eclipse/Preferences/Maven/Lifecycle Mappings を参照し、OKをクリックします。