Я установил Eclipse и плагин Jboss Tools вместе с Wildfly. Я создал проект EAR, проект WAR и два проекта EJB jar app1
и app2
. Я конвертировал все проекты в Maven.
app1
использует класс app2
. Это хорошо компилируется в Eclipse. Но когда я запускаю приложение, я получаю ClassNotFoundException
.
EAR pom.xml имеет зависимости:
<dependencies>
<dependency>
<groupId>app1</groupId>
<artifactId>app1</artifactId>
<version>1.0</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>mywar</groupId>
<artifactId>mywar</artifactId>
<version>1.0</version>
<type>war</type>
</dependency>
<dependency>
<groupId>app2</groupId>
<artifactId>app2</artifactId>
<version>1.0</version>
<type>ejb</type>
</dependency>
</dependencies>
Если я добавлю app2.jar
к пути к классу app1
в МАНИФЕСТЕ, app1
сможет найти класс. Проблема в том, что когда я изменяю класс в app1
, MANIFEST воссоздается автоматически, удаляя путь к классу.
Это работает:
Class-Path: app2-1.0.jar
Я добавил в app1
pom.xml плагин для обновления MANIFEST при изменении классов, но он ничего не меняет:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.1</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
</manifest>
<manifestEntries>
<Class-Path>app2-1.0.jar</Class-Path>
</manifestEntries>
</archive>
</configuration>
</plugin>
Как решить эту проблему?