I have a project which I need to rename the final output file generated by the Maven Assembly Plugin
after everything else finishes (in the compiling/building/assembly process).
The Maven Assembly Plugin
is generating a final .zip
file, based on the project's name, and I need to rename this completely to final-version.oxt
. I'm trying to use the maven-antrun-plugin
to rename it, as pointed by other similar questions here, but no luck (I've never used Maven or Ant before, so maybe I'm missing something).
This is the <build>
section of the project's pom.xml
. The rename part seems to be completely ignored, since no file is generated in my home
folder.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>assembly</id>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
<configuration>
<archive>
<manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
</archive>
<descriptors>
<descriptor>src/main/assembly/ooo-jar.xml</descriptor>
<descriptor>src/main/assembly/ooo.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>deploy</phase>
<configuration>
<tasks>
<copy file="${project.build.directory}/target/libreofficeplugin-ooo.zip"
tofile="/home/brunofinger/final-version.oxt" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
This question is nearly an year old, but in case anyone else is facing similar issue, here is an alternate solution.
If you are looking for a more mavenish way of doing it,you can use
and in case you want to copy instead of rename, use the copy goal instead of the rename goal.
A few modifications made it work, probably the
phase
was wrong, but using<phase>install</phase>
seems to make it work:You don't need to use antrun to rename the output file. Just use the tag finalName of the assembly plugin to rename the output file.