Нечитаемый ввод POM {путь} не содержит данных

Я новичок в Maven. Я изучаю это по книгам, и когда я пытаюсь запустить это в PowerShell:

mvn archetype:generate -DgroupId=net.sirirangan.packt.maven -DartifactId=MySampleApp

Я получаю такую ​​ошибку:

Some problems were encountered while processing the POMs: [FATAL] Non-readable POM F:\tt\pom.xml: input contained no data

Даже если я выполню это: mvn help:effective-pom, я получу ту же ошибку. Я создал пустой pom.xml в папке tt, зашел в эту папку в PowerShell и выполнил команду.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
3
0
4 572
2

Ответы 2

Архетипы Maven созданы для создания ваших проектов с нуля; вы не должны ничего настраивать перед запуском. Итак, у вас не должно быть никаких POM, пустых или каких-либо других.

Существует множество различных архетипов; в основном они являются шаблонами проектов. Итак, у вас может быть архетип, который генерирует вам базовое приложение или тот, который уже генерирует вам сложное веб-приложение с Spring MVC и JPA (для взаимодействия с базой данных) в нем.

По этой ссылке: https://maven.apache.org/archetypes/maven-archetype-quickstart/

Вот пример команды генерации архетипа для архетипа быстрого старта (просто базового проекта Java Maven).

mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes \
    -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.3

Обратите внимание, что я добавил новую строку с \, чтобы сделать ее более читаемой; вы должны просто вынуть это и объединить строки, как они были в ссылке.

Похоже, вам не хватает archetypeArtifactId. Какой архетип вы пытались использовать?

Дополнительные предложения

Создайте вложенный подкаталог и убедитесь, что вы можете создать там файл. Затем запустите команду создания из каталога.

Вот его демонстрация на моем ПК:

Демонстрировать

Используя Maven версии 3.3.3:

> mvn archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.3
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:3.0.1:generate (default-cli) > generate-sources @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:3.0.1:generate (default-cli) < generate-sources @ standalone-pom <<<
[INFO]
[INFO] --- maven-archetype-plugin:3.0.1:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Interactive mode
[INFO] Archetype repository not defined. Using the one from [org.apache.maven.archetypes:maven-archetype-quickstart:1.0-alpha-1 -> http://10.48.82.139/ETCB/nexus/content/groups/fid] found in catalog remote
Define value for property 'groupId': my.group
Define value for property 'artifactId': my-project
Define value for property 'version' 1.0-SNAPSHOT: :
Define value for property 'package' my.group: :
Confirm properties configuration:
groupId: my.group
artifactId: my-project
version: 1.0-SNAPSHOT
package: my.group
 Y: : Y
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: maven-archetype-quickstart:1.3
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: my.group
[INFO] Parameter: artifactId, Value: my-project
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: my.group
[INFO] Parameter: packageInPathFormat, Value: my/group
[INFO] Parameter: package, Value: my.group
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: groupId, Value: my.group
[INFO] Parameter: artifactId, Value: my-project
[INFO] Project created from Archetype in dir: C:\Dev\git\archetype-test\my-project
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:17 min
[INFO] Finished at: 2018-09-07T14:11:07-04:00
[INFO] Final Memory: 18M/491M
[INFO] ------------------------------------------------------------------------

Я уже пробовал это, это дает мне эту ошибку: указанная вами цель требует выполнения проекта, но в этом каталоге (F: \ tt) нет POM. Пожалуйста, убедитесь, что вы вызвали Maven из правильного каталога

migano 07.09.2018 20:05

Добавлена ​​дополнительная информация и вывод из примера того, как я только что запустил его.

John Humphreys 07.09.2018 20:15

Я выполнил строку, которую вы мне дали, с этой ошибкой: указанная вами цель требует выполнения проекта, но в этом каталоге нет POM (F: \ tt \ ww). Убедитесь, что вы вызвали Maven из правильного каталога.

migano 07.09.2018 20:59

если я выполню это в одиночку, это сработает: mvn archetype: generate

migano 07.09.2018 21:04

Извините, не знаю, что сказать. Я запустил его в пустом каталоге ... определенно никакого проекта (в том-то и дело, он его создает).

John Humphreys 07.09.2018 22:09

в любом случае спасибо за попытку, что сводит меня с ума, так это то, что он работает, если я запускаю это: mvn archetype: generate

migano 07.09.2018 22:10

К вашему сведению, большинство людей запускают это из IDE. Попробуйте получить версию сообщества IntelliJ. Файл, новый проект, maven, выберите создать из архетипа и выберите вариант для быстрого старта. Он поставляется в комплекте с собственным maven, поэтому его нужно правильно настроить. Попробуй это.

John Humphreys 07.09.2018 22:12

Я думаю, что ваш M2_HOME установлен на недопустимую версию. Просто удалите его или исправьте путь и попробуйте еще раз.

Другие вопросы по теме