使用jenkins执行应用脚本启动服务无法结束构建

搞了好久发现一个小问题,在此记录一下

启动脚本中需要将上次应用进程给关闭掉,下面语句查询myapp应用的进程号,如果是直接在服务器运行,只会查询出一个进程号,但是如果使用jenkins,就会查询出很多进程号,其中不光包括了应用的进程号,与myapp相关的构建过程的进程也会查询出来,但是等到kill的时候,此进程已经结束,就会造成找不到进程号的问题,正确的做法应该是将myapp改成myapp.jar

错误做法

killpid=`ps -ef | grep myapp | grep -v grep | awk '{print $2}'`

kill -9 $killpid

正确做法

killpid=`ps -ef | grep myapp.jar | grep -v grep | awk '{print $2}'`

kill -9 $killpid

你可能感兴趣的:(jenkins,服务器,运维)