Tengo un proyecto por el cual intento crear un archivo zip de distribución que contiene (entre otros archivos) un archivo ejecutable con dependencias de mi proyecto java.plugin maven-assembly: cómo crear conjuntos anidados
Así que en cierto modo me quiere que se vea como esto:
-wiki-search-1.0.0-dist.zip
-wiki-search.bat
-wiki-search-help.html
-wiki-search-1.0.0-jar-with-dependencies.jar
-jar content...
estoy usando el plugin de montaje, y el descriptor predefinido "jar-con-dependencias" para crear mi archivo jar ejecutable.
Estoy especificando una entrada de complemento de ensamblaje por separado en mi pom, haciendo referencia a un descriptor personalizado para intentar crear el archivo zip distribuible.
Así que la parte de mi pom se parece a esto:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>quicksearch.QuickSearchApp</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>src/main/assembly/dist.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
</execution>
</executions>
</plugin>
Y mi descriptor de costumbre se ve así:
<assembly>
<id>dist</id>
<formats>
<format>tar.gz</format>
<format>tar.bz2</format>
<format>zip</format>
</formats>
<fileSets>
<fileSet>
<includes>
<include>${project.basedir}/target/wiki-search-0.0.1-SNAPSHOT-jar-with-dependencies.jar</include>
</includes>
<outputDirectory>.</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.basedir}/src/main/etc</directory>
<includes>
<include>*</include>
</includes>
<outputDirectory></outputDirectory>
</fileSet>
</fileSets>
</assembly>
Todo funciona bien. El jar-with-dependence se está construyendo. Mi archivo zip dist se está construyendo. Pero el archivo zip dist no contiene el archivo jar-with-dependencies.
+1 muy agradable y detallada respuesta –
Leyenda . Trabajó por primera vez. Aclamaciones. – Ben
¡Gracias! ¿Hay alguna manera de lograr esto sin asociar la ejecución al ciclo de vida predeterminado? Solo omitir los elementos de 'fase' y 'objetivos' no funcionó para mí. –