1

我正在开发一个由多个其他项目组成的项目。它具有以下结构:

MainProject

  --projectA

  --projectB

  --projectC

  --projectD

  --parent

  --projectE

  ...

  --projectX

如您所见,父母是其中之一。我不确定这是否不寻常,但它就是这样,我必须处理它。

我希望使用 Assembly 插件从每个子项目中获取依赖项,并将它们全部压缩到一个文件夹中。例如,我想要一个 zip 文件,其中包含一个文件夹,该文件夹包含子项目的所有解压缩依赖项。

这是我到目前为止所拥有的:

assembly.xml(这是在父项目中)

[...]
    <id>package</id>
        <formats>
            <format>zip</format>
        </formats>
        <includeBaseDirectory>false</includeBaseDirectory>

        <moduleSets>
             <moduleSet>
             <includes>
                 <include>com.example:../one</include>
                 <include>com.example2:../two</include>
                 <include>com.exampleX:../three</include>
             </includes>
             <binaries>
                 <outputDirectory>/library/jars</outputDirectory>
                 <unpack>false</unpack>
             </binaries>
             </moduleSet>
        </moduleSets>

        <dependencySets>
            <dependencySet>
                <unpack>false</unpack>
                <scope>runtime</scope>
                <outputDirectory>library/jars</outputDirectory>
             </dependencySet>
        </dependencySets>
        <fileSets>
            <fileSet>
                <excludes>
                    <exclude>**.xml</exclude>
                </excludes>
            </fileSet>
        </fileSets>
</assembly>

这是在父母pom.xml

[...]
    <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.4</version>
        <executions>
            <execution>
                <id>make-assembly</id>
                <phase>package</phase>
                <goals>
                    <goal>assembly</goal>
                </goals>
            </execution>
         </executions>
        <configuration>
            <descriptors>
                <descriptor>assembly.xml</descriptor>
            </descriptors>
        </configuration>
    </plugin>
[...]

当我mvn clean install从 cmd 运行时,构建成功。但是,它不会创建一个包含我的library/jars目录的 zip 文件,该目录应该包含每个项目的所有依赖项。它只是在每个项目中创建 zip。这些 zip 不包含我想要的目录或任何依赖项,它们只是每个项目目录的 zip。谁能看到我做错了什么?

4

0 回答 0