I have a Maven project, where under src/main directory there is a sub dir called output. this folder needs to be packaged into tar.gz. when using the assembly plugin as follows:
You need to configure the assembly descriptor to not include the base directory and to configure an output directory for the fileSet
:
<assembly>
<id>bundle</id>
<formats>
<format>tar.gz</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>src/main/output</directory>
<outputDirectory>output</outputDirectory>
</fileSet>
</fileSets>
</assembly>
With the above assembly descriptor, I get the following result (when running on a project reproducing the structure):
$ mvn clean assembly:assembly ... $ cd target $ tar zxvf Q3330855-1.0-SNAPSHOT-bundle.tar.gz output/ output/hello.txt
Try setting outputDirectory
in the fileSet. That should remove the src/main/output directories.
<fileSet>
<directory>src/main/output</directory>
<outputDirectory>.</outputDirectory>
</fileSet>
You may also need to set includeBaseDirectory to false. That would remove the name directory.
<assembly>
<id>bundle</id>
<includeBaseDirectory>false</includeBaseDirectory>
<!-- ... -->