如何在exec-maven-plugin上执行清理脚本:exec失败?

问题描述:

我正在使用maven插件exec-maven-plugin来执行一个脚本,这个脚本将启动几个对应于integration test的java程序,如果测试通过,所有内容都会在构建中稍后执行的cleanup script正确停止。如何在exec-maven-plugin上执行清理脚本:exec失败?

我的问题是当测试失败,因为当插件exec-maven-plugin失败时,立即停止构建,这样我的cleanup script永远不会被调用,这意味着我的java程序永远不会停止。

即使我的integration test失败,那么是否有执行我的cleanup script的方法?

到目前为止,我说1作为successCode我的集成测试,以确保我的cleanup script叫,但因为看到了构建有一个内置的成功是不是这样还不够好。

任何想法?

这里是我终于做到:

  1. 我为了确保该cleanup script总是叫加1作为success codeintegration test
  2. 我以将标准输出流重定向到一个文件中定义的属性outputFile到我integration test稍后测试
  3. cleanup script后,我检查在文件中的步骤#2中创建使用的指令的给定图案键入cat {my-file} | grep {my-pattern} >/dev/null以便知道integration test是否通过,如果无法找到该模式,则会使构建失败,否则构建将通过。