我已经定义了一个maven程序集插件,用于在我的项目目录以外的目录中打包和创建二进制文件。 pom和assembly.xml如下..
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>${basedir}/src/main/assembly/assembly.xml</descriptor>
</descriptors>
<finalName>Simple-Batch</finalName>
<outputDirectory>${basedir}/../../Server-Dist/target/Server-Dist-0.0.1-SNAPSHOT-bin/Server-Dist-0.0.1-SNAPSHOT/modules/</outputDirectory>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
Assembly.xml
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<formats>
<format>dir</format>
</formats>
<dependencySets>
<dependencySet>
<unpack>false</unpack>
<scope>runtime</scope>
<outputDirectory>lib</outputDirectory>
<excludes>
<exclude>*:zip</exclude>
</excludes>
</dependencySet>
<dependencySet>
<unpack>true</unpack>
<scope>runtime</scope>
<outputDirectory>lib</outputDirectory>
<includes>
<include>*:zip</include>
</includes>
</dependencySet>
<dependencySet>
<unpack>false</unpack>
<scope>system</scope>
<outputDirectory>lib</outputDirectory>
</dependencySet>
</dependencySets>
<fileSet>
<directory>src/main/config</directory>
<outputDirectory>config</outputDirectory>
<includes>
<include>*.properties</include>
<include>*.conf</include>
<include>*.xml</include>
</includes>
</fileSet>
</fileSets>
</assembly>
但问题是, 创建的文件夹结构是 目标\服务器DIST-0.0.1-SNAPSHOT \服务器DIST-0.0.1-SNAPSHOT \ \模块简单批次\简单,批\ 但我期待的是
目标\服务器距离 - 0.0.1-SNAPSHOT \模块\简单分批\
我不明白为什么这个额外的目录再次创建Simple-Batch ...感谢提前帮助...