我有一个父pom文件,其中声明了一些模块,例如
<modules>
<module>execution</module>
<module>model</module>
</modules>
问题是,在开始构建上面列出的模块之前,我想执行与父bootstrap.sh
相同级别的bash脚本pom.xml
。
使用Maven可以做到吗?或者,还有另一种方法可以在模块的编译开始之前执行bootstrap.sh
。
答案 0 :(得分:1)
构建多模块项目时,将首先构建聚合器,然后根据模块之间的依赖关系按顺序构建模块。
您可以将以下插件添加到聚合器(问题中提到的父pom)pom.xml来解决您的问题。我选择要执行的初始化,但是您也可以选择安装。签出lifecycle.此处导入的内容当发出生命周期中稍后的maven命令时,将执行此代码。 (例如:如果您选择安装作为阶段,并执行mvn软件包,则不会执行。)
<build>
<plugins>
<plugin>
<artifactId>exec-maven-plugin</artifactId>
<groupId>org.codehaus.mojo</groupId>
<version>1.6.0</version>
<executions>
<execution>
<id>Run Script</id>
<phase>initialize</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>bootstrap.sh</executable>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>