избавиться от POM not found предупреждение для org.eclipse.m2e: отображение жизненного цикла - PullRequest
53 голосов
/ 26 октября 2011

Чтобы правильно настроить 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, но результат тот же.

Ответы [ 5 ]

61 голосов
/ 17 мая 2014

Моя команда обходит эту проблему, поместив соответствующую конфигурацию в профиль:

<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>
15 голосов
/ 02 сентября 2013

Это известная ошибка с WONTFIX разрешением. Предлагаемое решение является самым простым на мой взгляд:

mvn archetype:generate -DgroupId=org.eclipse.m2e -DartifactId=lifecycle-mapping \
 -Dversion=1.0.0 -DarchetypeArtifactId=maven-archetype-mojo

и install этот проект.

8 голосов
/ 05 января 2012

Это решение в настоящее время устарело, я бы порекомендовал использовать решение "profile" от @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.

С уважением, Мирко

5 голосов
/ 27 октября 2017

m2eclipse 1.7.0 представил альтернативу, а именно инструкцию обработки XML.

В исходном примере вы просто «аннотировали» каждую <execution> цели maven-processor-plugin process с помощью

<?m2e execute?>

Подробнее о синтаксисе и дополнительных параметрах см. В примечаниях к выпуску .

1 голос
/ 09 ноября 2012

Теперь есть лучшее решение (только для сообщений об ошибках в Eclipse).

Нажмите CTR + 1 при ошибке Выполнение плагина, не охватываемое конфигурацией жизненного цикла: org.codehaus.mojo: buildnumber-maven-plugin: 1.1: create-timestamp (выполнение: default-create-timestamp, phase: validate) и затем выберите эту опцию:

enter image description here

Работает с плагином org.eclipse.m2e.editor.xml_1.2.0.20120903-1050.jar (может быть и раньше)

...