在 maven 安装后运行脚本
我有一个Maven项目,安装项目后,我需要运行一个脚本。我想自动执行此过程。我的猜测是,通过在pom文件中添加一些东西,我可以自动化它,但到目前为止,我还没有找到如何在安装后运行脚本。我只在 maven 项目安装之前才找到如何运行脚本。
那么,如何在 Maven 项目完成安装后运行脚本?
我有一个Maven项目,安装项目后,我需要运行一个脚本。我想自动执行此过程。我的猜测是,通过在pom文件中添加一些东西,我可以自动化它,但到目前为止,我还没有找到如何在安装后运行脚本。我只在 maven 项目安装之前才找到如何运行脚本。
那么,如何在 Maven 项目完成安装后运行脚本?
将 http://www.mojohaus.org/exec-maven-plugin/ exec-maven-plugin 与指定安装阶段的“执行”配置块结合使用。确保它是在您的maven-install-plugin之后,因为插件按顺序运行(在同一阶段内)
(in build/plugins)
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.5.0</version>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>do-something.sh</executable>
<workingDirectory>/some/dir</workingDirectory>
<arguments>
<argument>--debug</argument>
<argument>with_great_effect</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
对于纯粹的 maven 驱动的方法,您正在寻找的答案是 的目标,并且此答案适用:https://stackoverflow.com/a/2008258/3403663exec
exec-maven-plugin
编辑:OP表明上述内容对他不起作用。
替代方法:我刚刚在我自己的项目中尝试了以下内容,它在安装阶段的最后,在部署工件后执行。ls
mvn clean install exec:exec -Dexec.executable="/bin/ls" -Dexec.args="/etc"
否则,您始终可以将整个内容包装在脚本中:
#!/bin/bash
set -o errexit
mvn clean install
<your other commands here>