在父模块执行之前构建子模块
Build child module before parent module execute
在我的项目结构中,我有 2 个子项目模块,它们在构建后创建 tar 文件(不使用程序集构建子模块,使用 ant 插件)。现在我有一个父模块,它将子模块 tar 文件复制到另一个 tar 通过程序集插件创建的文件作为发布结构的一部分。
父 pom 程序集
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
程序集文件:
<fileSets>
<fileSet>
<directory>${project.basedir}/module1/target</directory>
<outputDirectory>/install/bin</outputDirectory>
<includes>
<include>*.tar</include>
</includes>
</fileSet>
</fileSets>
现在,由于父构建在子模块构建之前执行,父模块转到程序集文件,程序集文件试图获取提到的文件名,但子模块直到那时才构建,出现错误。但是如果我手动构建子项目那么它工作正常。
那么,我该如何指示先构建子模块或解决此问题的任何其他方法。
不要将程序集放在父级中,而是添加另一个模块,例如名为 "release",它具有其他两个模块作为依赖项。因此,Maven 将首先构建两个模块并创建 tar-files,然后 release-module 将 assemble 所有内容组合在一起。
在我的项目结构中,我有 2 个子项目模块,它们在构建后创建 tar 文件(不使用程序集构建子模块,使用 ant 插件)。现在我有一个父模块,它将子模块 tar 文件复制到另一个 tar 通过程序集插件创建的文件作为发布结构的一部分。
父 pom 程序集
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
程序集文件:
<fileSets>
<fileSet>
<directory>${project.basedir}/module1/target</directory>
<outputDirectory>/install/bin</outputDirectory>
<includes>
<include>*.tar</include>
</includes>
</fileSet>
</fileSets>
现在,由于父构建在子模块构建之前执行,父模块转到程序集文件,程序集文件试图获取提到的文件名,但子模块直到那时才构建,出现错误。但是如果我手动构建子项目那么它工作正常。
那么,我该如何指示先构建子模块或解决此问题的任何其他方法。
不要将程序集放在父级中,而是添加另一个模块,例如名为 "release",它具有其他两个模块作为依赖项。因此,Maven 将首先构建两个模块并创建 tar-files,然后 release-module 将 assemble 所有内容组合在一起。