Этот плагин Maven действительно имеет неверный дескриптор? - PullRequest
3 голосов
/ 09 июня 2010

КОМАНДА:

mvn org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-4:generate -DarchetypeGroupId=org.beardedgeeks -DarchetypeArtifactId
=gae-eclipse-maven-archetype  -DarchetypeVersion=1.1.2 -DarchetypeRepository=http://beardedgeeks.googlecode.com/svn/repository/release
s

ВЫХОД:

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Internal error in the plugin manager getting plugin 'org.apache.maven.plugins:maven-archetype-plugin': Plugin 'org.apache.maven
.plugins:maven-archetype-plugin:2.0-alpha-4' has an invalid descriptor:
1) Plugin's descriptor contains the wrong group ID: net.kindleit
2) Plugin's descriptor contains the wrong artifact ID: maven-gae-plugin
3) Plugin's descriptor contains the wrong version: 0.5.9
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Wed Jun 09 20:48:35 CEST 2010
[INFO] Final Memory: 3M/15M
[INFO] ------------------------------------------------------------------------

Мне трудно поверить, что этот плагин Maven имеет неверный дескриптортак как другие люди, кажется, используют его без проблем.Я что-то не так делаю?

Ответы [ 3 ]

2 голосов
/ 10 июня 2010

У меня часто возникают проблемы с дерьмовыми метаданными в моем локальном хранилище. Эта ошибка обычно исчезает после того, как я

rm -Rf my/home/dir/.m2/repository/net/kendleit/maven-gae-plugin

но на самом деле причина, по которой он работает с Pascal, заключается в том, что Pascal использует этот URL http://beardedgeeks.googlecode.com/svn/repository/releases, тогда как вы используете этот URL http://beardedgeeks.googlecode.com/svn/repository/release (s отсутствует, следовательно, 404)

выполните rm, как упомянуто выше, а затем снова запустите с правильным URL


РЕДАКТИРОВАТЬ: извините, на самом деле есть трейлинг, я не видел. Я забираю все обратно, но все же: попробуйте удалить метаданные в вашем локальном репо

1 голос
/ 10 июня 2010

Невозможно воспроизвести вашу проблему, следующая команда отлично работает для меня (скопировано и вставлено из GAE + Eclipse + Maven Archetype ):

mvn org.apache.maven.plugins:maven-archetype-plugin:2.0-alpha-4:generate \
  -DarchetypeGroupId=org.beardedgeeks \
  -DarchetypeArtifactId=gae-eclipse-maven-archetype \
  -DarchetypeVersion=1.1.2 \
  -DarchetypeRepository=http://beardedgeeks.googlecode.com/svn/repository/releases

Протестировано с Maven 2.2.1:

$ mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-06 21:16:01+0200)
Java version: 1.6.0_20
Java home: /usr/lib/jvm/java-6-sun-1.6.0.20/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "2.6.32-22-generic" arch: "i386" Family: "unix"
0 голосов
/ 30 августа 2013

Причина: GAV (groupid, artifactid, версия) в Nexus (следовательно, в локальном репозитории и в pom.xml) отличается от GAV-файла в \ META-INF \ maven \ plugin.xml

Обычно это происходит, когда вы вручную загружаете артефакт плагина в свой собственный Nexus (или любой другой корпоративный репозиторий maven)

Решение:

  • скачайте jar, посмотрите какие значения GAV в plugin.xml
  • загрузить банку на Nexus, передав в виде GAV информацию из plugin.xml
  • Обновите pom.xml соответственно

Обязательно удалите из Nexus старый несовместимый артефакт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...