Спросите о архетипических свойствах maven со значениями по умолчанию - PullRequest
15 голосов
/ 09 октября 2010

Я собираю архетип maven, имеющий множество пользовательских свойств, которые используются для фильтрации различных ресурсов архетипа.Я указал их со значениями по умолчанию в archetype-metadata.xml, например

<requiredProperties>
  <requiredProperty key="application-name">
    <defaultValue>Some Application</defaultValue>
  </requiredProperty>>  
</requiredProperties>

Однако, когда я пытаюсь создать проект с архетипом, он не позволяет мне изменять их в интерактивном режиме.Например, он запрашивает версию со значением по умолчанию следующим образом:

Define value for property 'version': 1.0-SNAPSHOT: 

, позволяющий ввести версию, но по умолчанию равным 1,0-SNAPSHOT, если ничего не введено.Для моих пользовательских свойств он просто отображает их перед созданием нового проекта

[INFO] Using property: application-name = Some Application

. Если я опускаю значение по умолчанию в archetype-metadata.xml, то запрашивает значение, но нетdefault.

Можно ли указать значение по умолчанию и получить запрос?

Ответы [ 5 ]

8 голосов
/ 07 ноября 2010

, пожалуйста, найдите последний вопрос для фиксации настроек.В моем случае есть последний вопрос:

:
Confirm properties configuration:
groupId: ....
 Y: :

Если я введу n , тогда все свойства будут повторно заданы интерактивно с моими настройками по умолчанию из archetype-metadata.xml.

Вот моя консольная часть:

Choose archetype:
1: file:///C:\Aktentasche\_daten\m3 -> maven-dsl-project-archet...
Choose a number: : 1
Downloading: file:///C:\Aktentasche\_daten\m3/net/sf/maven/plug...
data.xml
[INFO] Using property: groupId = net.sf.maven.plugins
[INFO] Using property: artifactId = dslexample
[INFO] Using property: version = 1.0.0-SNAPSHOT
[INFO] Using property: package = net.sf.maven.plugins
[INFO] Using property: eclipse_platform = helios
[INFO] Using property: tycho_version = 0.8.0
Confirm properties configuration:
groupId: net.sf.maven.plugins
artifactId: dslexample
version: 1.0.0-SNAPSHOT
package: net.sf.maven.plugins
eclipse_platform: helios
tycho_version: 0.8.0
 Y: :

Здесь я должен ввести n для интерактивного диалога со значениями по умолчанию.

7 голосов
/ 13 апреля 2011

Короче, нет, это невозможно. В этом есть проблема JIRA . Если это проблема для вас, вы можете проголосовать за нее.

1 голос
/ 14 января 2012

Я знаю, что это далеко от идеала, но если вы предоставите значение по умолчанию для всех требуемых свойств (включая groupId, artifactId, версию и пакет), вам будет предложено продолжить, а затем, введя n , вы достигнет вашей цели

0 голосов
/ 15 марта 2012

Вы пытались снять второй карат с конца requiredProperty?

Заменить </requiredProperty>> на </requiredProperty>

Похоже, возможно, неправильно сформированная проблема XML.

0 голосов
/ 14 октября 2010

Я поднял это в списке рассылки Maven, но не получил ответа.В качестве временного решения можно использовать системные свойства для их переопределения в командной строке при запуске архетипа

e.g. -Dapplication-name="Some Application"
...