2013-02-18 3 views
0

, строящему Maven архетип, где файлы генерируются с помощью _ артефакта _. archetype.xml выглядит следующим образом:Манипулирование __artifactId__ во время файла генерации по Maven архетип

<sources> 
    <source>src/main/java/__artifactId__.java</source> 
    <source>src/main/java/__artifactId__CommandExecutor.java</source> 
    <source>src/main/java/__artifactId__EventListener.java</source> 
</sources> 

Создание проекта с использованием этого архетипа может привести к именам файлов Java, которые не следуют соглашению об именах, таких как sample-plugin.java и sample-pluginCommandExecutor.java.

Как я могу убедиться, что _ артефакта _ преобразуется в соответствующее имя файла Java, такие как SamplePlugin.java и SamplePluginCommandExecutor.java.

ответ

0

Я не эксперт по архетипу, на самом деле я просто сделал это один раз, но столкнулся с очень похожими проблемами.

Я не смог найти способ настроить имена файлов или каталогов в любом случае, я имею в виду использование одного из параметров архетипа и преобразование .

Итак, есть 2 вида решения я использовал

  • Добавить новый параметр архетип, где можно указать имя класса
  • Используйте стандартное имя (например, ArtifactClass.java), а затем создать профиль Maven (включено, если этот файл присутствует) с муравьиной скрипт, который меняет имя (только помните внутри файлы вы можете использовать скорость, чтобы настроить его)

Надеется, что это помогает Тонио

+0

Я думал об использовании маршрута имени фиксированного класса, но хотел бы изучить возможность прохождения параметра. Однако параметр доступен как $ {property}. Текущий исходный файл называется ____artifactId____.java. Как будет назван новый исходный файл в этом случае? –

+0

Допустим, что ваш параметр - mainClassName, поэтому в вашем архетипе класс должен называться ____mainClassName____.java (2 подчеркивания с обеих сторон), я использовал этот подход для имен каталогов, я думаю, он будет работать и для имен файлов. – tonio

Смежные вопросы