Я определил общую библиотеку, используя несколько общих классов:
<dependencies>
...
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
</dependency>
...
</dependency>
Теперь, в мой военный проект я просто включаю библиотеку:
<dependency>
<groupId>my.common</groupId>
<artifactId>common</artifactId>
</dependency>
Затем я строю войну:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>${maven-war-plugin.version}</version>
<configuration>
<archive>
<manifest> <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
</manifest>
</archive>
</configuration>
</plugin>
Я ожидал, что моя общая библиотека будет несколько МБ, но происходит то, что в папке war lib я нахожу как свою общую библиотеку (несколько КБ), так и 2 заявленные в ней зависимости .
Теперь, если бы я хотел поделиться зависимостями, мне пришлось бы развернуть все 3 из них как библиотеки на моем сервере приложений, но вместо этого я действительно хочу иметь только одну большую общую.
Что мне здесь не хватает?