mvn архетип: генерировать не работает - не найден плагин для префикса «архетип» - PullRequest
22 голосов
/ 24 июня 2011

Я хочу построить простой проект, используя существующий архетип.Но я не могу запустить mvn archetype:generate, поскольку он продолжает сообщать мне следующую информацию

[ERROR] No plugin found for prefix 'archetype' in the current project and in the
 plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the
repositories [local (C:\Documents and Settings\ccen\.m2\repository), central (ht
tp://repo1.maven.org/maven2)] -> [Help 1]

Я использовал MS Windows и не использовал settings.xml в своей папке ~ / .m2 и все такоеэто совершенно новый.Может ли кто-нибудь помочь мне разобраться?

Ответы [ 12 ]

20 голосов
/ 24 июня 2011

Другая вещь, которая может пойти не так, это то, что ваша машина находится за брандмауэром или прокси-сервером, поэтому ваш ящик не может набрать http://repo1.maven.org/maven2.Попробуйте получить доступ к этому URL-адресу непосредственно в браузере или что-то еще, чтобы проверить, можете ли вы сделать запрос.

15 голосов
/ 24 июня 2011

Команда, которую вы должны использовать для создания проекта с архетипом: ...

mvn archetype:generate

Команда, которую вы отправили в своем вопросе, была неправильной (отсутствует первый 'e' в архетипе). Я предполагаю, что это просто опечатка в SO, потому что ошибка, которую вы опубликовали, имела правильный тип архетипа.

Я полагаю, что эта ошибка произойдет, если вы пытаетесь выполнить эту команду из каталога, в котором уже есть файл pom.xml. Он попытается найти конфигурацию подключаемого модуля архетипа в существующем файле pom.xml.

Попробуйте выполнить команду еще раз в пустом каталоге или, по крайней мере, в том, в котором нет файла pom.xml, и он должен работать.

9 голосов
/ 30 января 2013

Если вы находитесь за межсетевым экраном coporate, настройте параметры прокси-сервера, используя «settings.xml» в каталоге / conf необходимо указать имя пользователя, пароль, хост и порт.

 |
<proxy>
  <id>optional</id>
  <active>true</active>
  <protocol>http</protocol>
  <username>proxyuser</username>
  <password>proxypass</password>
  <host>proxy.host.net</host>
  <port>80</port>
  <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>

5 голосов
/ 01 марта 2014

Это проблема с вашим брандмауэром.Чтобы проверить, включен ли брандмауэр:

Нажмите Пуск-> нажмите Выполнить-> введите wscui.cpl -> нажмите ОК.В Центре безопасности Windows -> щелкните Безопасность. Если сетевой сетевой брандмауэр включен, вам нужно установить прокси для maven.

Перейдите в / conf -> откройте файл settings.xml с прокомментированным прокси в блокноте (еслиНе запомните настройки прокси-сервера, которые вы можете проверить в веб-браузере с помощью)

<proxies>
    <proxy>
        <id>optional</id>
        <active>true</active>
        <protocol>http</protocol>
        <username></username>
        <password></password>
        <host>www-proxy.us.oracle.com</host>
        <port>80</port>
        <nonProxyHosts></nonProxyHosts>
    </proxy>
</proxies>

Вы можете оставить поля username и pwd пустыми и установить только хост и порт.

2 голосов
/ 05 декабря 2013

Другая проблема с Windows (Vista, Windows 7 и более поздние версии) заключается в том, что командная строка должна быть запущена с правами администратора (щелкните правой кнопкой мыши ярлык командной строки и выберите «Запустить объявление администратора», если UAC включен), поэтому просто запустите командную строку как Администратор перед выполнением архетипа mvn: generate.

Я сталкивался с этой проблемой при создании проекта vaadin 7 под Windows 7 с помощью следующей команды.

mvn archetype:generate -DarchetypeGroupId=com.vaadin -DarchetypeArtifactId=vaadin-archetype-application -DarchetypeVersion=7.1.8 -DgroupId=im.sma.testproject -DartifactId=testproject -Dversion=1.0 -Dpackaging=war
  • SMA
1 голос
/ 10 июня 2016
  • Чтобы добавить ответ Венерика , я бы немного уточнил для таких наивных пользователей, как я;

настройки прокси в maven перейдите к apache-maven-3.3.9\ conf и найдите файл settings.xml, откройте его в любом текстовом редакторе, перейдите в блок кода, который выглядит следующим образом

 <proxies>
<!-- proxy
 | Specification for one proxy, to be used in connecting to the network.
 |
<proxy>
  <id>optional</id>
  <active>true</active>
  <protocol>http</protocol>
  <username>proxyuser</username>
  <password>proxypass</password>
  <host>proxy.host.net</host>
  <port>80</port>
  <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
</proxy>
-->
 </proxies>
  • Теперь раскомментируйте код из (proxy ... / proxy) с помощьювырезать и вставить его

сразу после (прокси).

Теперь измените в соответствии с настройками вашего прокси. В моем случае это выглядит следующим образом

<proxies>
  <proxy>
      <id>optional</id>
      <active>true</active>
      <protocol>http</protocol>      
      <host>authproxy.serc.iisc.ernet.in</host>
      <port>3128</port>
      <nonProxyHosts>local.net|some.host.com</nonProxyHosts>
  </proxy>
  <!-- proxy
     | Specification for one proxy, to be used in connecting to the      network.
 |
   -->
  </proxies>

Теперь попробуйте запустить mvn archetype: generate , и он должен запуститься и загрузить

0 голосов
/ 08 мая 2019

У меня такая же проблема при использовании maven 3.6.1 с jdk 1.7.40.

Чтобы решить эту проблему, я просто обновляю свою версию JDk до 1.8.241.

Надеюсь, это поможет вам.

0 голосов
/ 05 октября 2018

Возникла та же проблема с maven 3. Я только что обновился с jdk7 до jdk8, и проблема была решена

0 голосов
/ 13 июля 2018

Если это предупреждение сопровождается предупреждением:

Received fatal alert: protocol_version

Затем проверьте версию Java.Я смог решить эту проблему, обновив версию Java с 7 до 10. См. Следующее:

https://github.com/technomancy/leiningen/issues/2364

0 голосов
/ 06 октября 2016

У меня была такая же проблема. Основная причина: типизированный mvn generate: archetype вместо archetype: generate.
Архетип mvn: генерировать - это правильный путь.

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