Учитывая файл pom.xml со списком зависимостей, есть ли команда Maven для объединения всех этих jar-файлов в один большой jar-файл? Я не хочу включать мои файлы .class в сборку - Я хочу включить только файлы библиотек .class / jar в сборку - есть ли способ сделать это?
Я вижу этот плагин вокруг:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/Crunchify/lib</outputDirectory>
<overWriteReleases>false</overWriteReleases>
<overWriteSnapshots>false</overWriteSnapshots>
<overWriteIfNewer>true</overWriteIfNewer>
</configuration>
</execution>
</executions>
</plugin>
- Я не могу понять, куда он копирует зависимости - даже если я жестко закодировал путь вместо
${project.build.directory}/Crunchify/lib
, в это место ничего не записывается, - Я предполагаю, что он копирует jar, но не помещает содержимое нескольких jar в один большой файл jar.
Я также вижу этот общий плагин:
http://maven.apache.org/plugins/maven-assembly-plugin/usage.html
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id> <!-- this is used for inheritance merges -->
<phase>package</phase> <!-- bind to the packaging phase -->
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
, но когда я запускаю mvn clean package
с maven-assembly-plugin
, присутствующим в pom.xml, я не вижу никаких новых файлов jar.