如何停止Maven执行

如何停止Maven执行,maven,maven-exec-plugin,Maven,Maven Exec Plugin,我有一个模拟服务器,我需要在运行自动化测试之前在Jenkins中启动它,然后在测试运行之后停止模拟服务器 此模拟服务器是一个maven项目,正在使用exec maven插件。我可以通过运行命令mvn exec:java来启动此服务器。然而,我无法通过詹金斯阻止这个maven项目。我已经读过了,大多数答案告诉我如何找到这个Maven项目的进程ID,然后杀死它。是否有更干净、更简单的方法来停止此项目?您需要使用maven生命周期的一部分启动和停止服务器 从 org.apache.tomcat.ma

我有一个模拟服务器,我需要在运行自动化测试之前在Jenkins中启动它,然后在测试运行之后停止模拟服务器


此模拟服务器是一个maven项目,正在使用
exec maven插件
。我可以通过运行命令
mvn exec:java
来启动此服务器。然而,我无法通过詹金斯阻止这个maven项目。我已经读过了,大多数答案告诉我如何找到这个Maven项目的进程ID,然后杀死它。是否有更干净、更简单的方法来停止此项目?

您需要使用maven生命周期的一部分启动和停止服务器


org.apache.tomcat.maven
tomcat7 maven插件
2.1
雄猫赛跑
只管打仗
预集成测试
真的
tomcat关机
关闭
整合后测试

这个问题的关键确实是您不知道processId。考虑使用<代码> Exc:Exc< <代码>。您将看到默认设置为true,这意味着一旦Maven关闭,它将关闭。

如果您正在运行linux:

ps aux|grep
然后
kill-9

<plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
       <executions>
          <execution>
            <id>tomcat-run</id>
            <goals>
              <goal>run-war-only</goal>
            </goals>
            <phase>pre-integration-test</phase>
                <configuration>

                    <fork>true</fork> 
                </configuration>

           </execution>
           <execution>
            <id>tomcat-shutdown</id>
            <goals>
              <goal>shutdown</goal>
            </goals>
            <phase>post-integration-test</phase>
          </execution>
        </executions>
      </plugin>