У меня есть иерархический проект maven, из которого я пытаюсь создать собственный установщик для нескольких под- модули. Я использую название своего продукта в качестве префикса:
в родительском 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
)
Эта проблема похожа на этот пост , но я понятия не имею, что такое «прикрепить» (возможно, устарел).