美文网首页
Jenkins中通过execute shell无法启动tomca

Jenkins中通过execute shell无法启动tomca

作者: Franck_ | 来源:发表于2020-03-04 13:06 被阅读0次

    使用jenkins和maven配合编译成功后。 进行部署,部署完成后,需要重启tomcat使新编译的代码生效。

    所以就需要在编译后,执行一些shell命令,如图:


    重启tomcat

    这时候执行tomcat的启动命令会执行失败,因为Jenkins会在构建完成后使用processTreeKiller杀掉了所有子进程,而且这是Jenkins的默认行为。Jenkins的做法非常合理。当一次build异常结束,或被人终止时,必然需要结束所有这次build启动的子进程。

    可以通过更改BUILD_ID的值来防止子进程被杀死;做法是写一个tomcat重启的脚本, 脚本内修改BUILD_ID。

    执行脚本

    脚本内容如下:

    #!/bin/bash
    export BUILD_ID=dontkillme #随便写
    
    sh tomcat_path/bin/shutdown.sh
    sleep 3s
    sh tomcat_path/bin/startup.sh 
    

    这样,就可以通过Jenkins来启动tomcat了。

    参考资料:
    Jenkins中通过execute shell无法启动tomcat

    相关文章

      网友评论

          本文标题:Jenkins中通过execute shell无法启动tomca

          本文链接:https://www.haomeiwen.com/subject/abzkyctx.html