Архетип Maven из проекта - как сохранить имена пакетов? - PullRequest
3 голосов
/ 04 января 2011

Я пытаюсь взять свой проект и сгенерировать из него Архетип через:

archetype:create-from-project

Дело в том, что мой проект имеет структуру пакета src / main / java com.sample.app, но архетип должен иметь его так, как хочет пользователь при генерации проекта из архетипа, но я полагаю, это невозможно. Кажется, он не захватывает groupId и artifactId и не генерирует archetype-resources/src/main/java на основе этого ввода.

Во всяком случае, поэтому, я полагаю, есть такой аргумент: packageName

mvn archetype:create-from-project -DpackageName=com.sample.app

Но это не работает, и все еще есть archetype-resources/src/main/java/org/sample/app ..

1 Ответ

4 голосов
/ 04 января 2011

Цель create-from-project обычно автоматически определяет имя базового пакета и заменяет его, поэтому в итоге вы получите \templateproject\target\generated-sources\archetype\src\main\resources\archetype-resources\src\test\java\Foo.java с объявлением пакета ${package}

Попробуйте подключаемый модуль архетипа и создайтеfrom-project с почти пустым проектом hello-world, и вы увидите, что сгенерированный архетип удалил пакет.Таким образом, пользователь, использующий archetype:generate, может указать имя своего пакета во время генерации.

...