Сборка maven игнорирует finalName для зависимых артефактов

У меня есть иерархический проект maven, из которого я пытаюсь создать собственный установщик для нескольких под- модули. Я использую название своего продукта в качестве префикса: xyz - $ {artifactId} в родительском POM, чтобы все мои jar-файлы с артефактами имели стандартное соглашение об именах.

xyz-parent
 +-- util
      +--- target/xyz-util.jar
 +-- core
      +--- target/xyz-core.jar
 +-- app1 <--- "builds an installer as part of the package phase"
      +--- target/xyz-app1.jar
 +-- app2 <--- "builds an installer as part of the package phase"
      ...

Мне нужно материализовать все зависимые jar-файлы в каталог (поскольку inno setup ничего не знает о maven). Поэтому для каждого подмодуля, который является установщиком, я планирую использовать maven-assembly-plugin, а затем использовать что-то вроде следующего в моей настройке inno:

Source: "target\pkg\lib\*.jar"; DestDir: "{app}\external";  Flags: ignoreversion;

Когда я запускаю mvn clean package , я получаю ] target / xyz-app1-bin / xyz-app1 / lib каталог со всеми зависимыми jar-файлами, однако ни один из jar-файлов, созданных моими родственными проектами, не имеет своих правильных окончательных имен (например, у меня есть util-0.0 .1-SNAPSHOT.jar вместо xyz-util.jar )

Эта проблема похожа на этот пост , но я понятия не имею, что такое «прикрепить» (возможно, устарел).

6
задан Community 23 May 2017 в 12:32
поделиться