代码之家  ›  专栏  ›  技术社区  ›  Some Name

在开始生成之前运行bash脚本

  •  0
  • Some Name  · 技术社区  · 7 年前

    我有一个父pom文件,它声明了一些模块,比如

    <modules>
        <module>execution</module>
        <module>model</module>
    </modules>
    

    问题是有一个bash脚本 bootstrap.sh 与父级处于同一级别 pom.xml 我想在上面列出的模块的构建开始之前执行。

    有没有可能和马文这样做?或者有另一种方法 BooTrasp.SH 在编译模块开始之前执行。

    1 回复  |  直到 7 年前
        1
  •  1
  •   miskender    7 年前

    在构建多模块项目时,将首先构建聚合器,并根据模块之间的依赖关系按顺序构建模块。

    您可以将以下插件添加到聚合器(它是您在问题中提到的父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>