user3572122
user3572122

Reputation: 13

Maven package zip file structure

I package zip using maven-assembly-plugin. After finished package, the zip file structure as follow:

test.zip
    |--test
        |--test.jar
        |--test.dalp

My assemble.xml and pom.xml configured as follow:

assemble.xml

<assembly>
<id>bin</id>
<formats>
    <format>zip</format>
</formats>
<fileSets>
    <fileSet>
        <directory>/</directory>
        <outputDirectory>/</outputDirectory>
        <includes>
            <include>test.dalp</include>
        </includes>
    </fileSet>
    <fileSet>
        <directory>/target</directory>
        <outputDirectory>/</outputDirectory>
        <includes>
            <include>test.jar</include>
        </includes>
    </fileSet>
</fileSets>

pom.xml

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.2.1</version>
    <configuration>
        <appendAssemblyId>false</appendAssemblyId>
        <descriptors>
            <descriptor>src/main/assembly/assembly.xml</descriptor>
        </descriptors>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

I want to know how to configure assemble.xml and pom.xml, and after I run "mvn clean package" in command line the zip file structure will be as follow:

test.zip
    |__test.jar
    |__test.dalp 

Upvotes: 1

Views: 968

Answers (1)

khmarbaise
khmarbaise

Reputation: 97557

You could change the configuration into the following:

<assembly>
  <id>bin</id>
<formats>
    <format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
    <fileSet>
        <directory>/</directory>
        <outputDirectory>/</outputDirectory>
        <includes>
            <include>test.dalp</include>
        </includes>
    </fileSet>
    <fileSet>
        <directory>/target</directory>
        <outputDirectory>/</outputDirectory>
        <includes>
            <include>test.jar</include>
        </includes>
    </fileSet>
</fileSets>

Upvotes: 1

Related Questions