Добавить дополнительные зависимости в существующий EAR
У меня есть 2 отдельных проекта Maven.
Первый создает много артефактов и упаковывает их в EAR. Это стандартный продукт.
Второй проект предназначен для клиента и создает несколько дополнительных файлов JAR. Мне нужен механизм для вставки этих двух файлов JAR в каталог lib EAR, созданного первым проектом.
Есть ли хороший простой способ сделать это, при котором я перечисляю артефакт первого проекта во втором, так что ему не нужно знать, как он был собран, он просто вставляет дополнительные JARS.
2 ответа
Вы можете включить содержимое другого файла ear во второй файл ear, указав зависимость для первого файла ear, но используя <type>pom</type>
вместо ear
:
если вы укажете зависимость для уха, переходные зависимости не будут разрешены (ear определяется как тип контейнера). Если вместо этого вы используете pom, все зависимости вашего первого уха (транзитивные) зависят от второго уха и, следовательно, включаются.
Вам необходимо добавить эти дополнительные jar-файлы в качестве зависимостей в ваш проект pom и, кроме того, вам нужно добавить их в вашу конфигурацию maven-ear-plugin:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-ear-plugin</artifactId>
<version>2.9</version>
<configuration>
[...]
<modules>
<jarModule>
<groupId>artifactGroupId</groupId>
<artifactId>artifactId</artifactId>
<bundleDir>lib</bundleDir>
</jarModule>
</modules>
</configuration>
</plugin>
</plugins>
</build>