• 通过Jenkins自动构建dubbo服务时的问题汇总


    最近接触新的dubbo项目,项目初始时,测试环境的提供者服务发布较频繁,奈何公司又没有自动发布工具,遂自己在测试环境中搭建了Jenkins用于dubbo服务的发布。由于第一次使用,过程中也遇到了一些问题,记录与此

    Q1、DubboShutdownHook

    问题描述

    打包/停止原进程/拷贝/解压 过程一切正常。在执行启动脚本正常执行,可惜服务就是未正常启动,手动启动正常。翻查启动日志发现一段警告信息:

    DubboShutdownHook WARN Unable to register Log4j shutdown hook because JVM is shutting down. Using SimpleLogger
    

    解决

    初步判断是与Log4j相关,最终发现与项目中log4j2.xml相关。可移步:http://javahonk.com/unable-to-register-shutdown-hook-because-jvm-is-shutting-down/

    可以log4j2.xml中添加shutdownHook=”disable” 完整内容如下

    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="INFO" shutdownHook="disable">
    ...	
    </Configuration>
    

    bingo smile

    Q2、Jenkins构建完成后杀死衍生进程

    问题描述

    在解决完上一个问题后,没有出现那一段警告信息了,本以为可以偷懒了,谁知道dubbo服务依旧还是没有启动,这时候翻查日志,对比手动启动的日志无任何不同,陷入沉思。依旧是,正常执行脚本,日志也说明已经启动,可就是没有该进程,难道是被什么给杀掉了?
    于是带着这个思路去搜索,Jenkins杀死进程发现了一条关键信息:
    https://blog.csdn.net/u011138533/article/details/53941123
    Jenkins默认会在Build结束后Kill掉所有的衍生进程
    原来如此!!

    解决

    在execute shell输入框中加入BUILD_ID=DONTKILLME
    完整如下:

  • 相关阅读:
    C#中使用$"{}"替换string.Format()
    js==>id-pid转children【】树结构数据
    React使用模板
    C#--fetch配置使用
    ...扩展运算符解释
    java之死锁
    Stream流
    lambda 之 forEach( ->{} )
    java基础之递归(九九乘法表)
    java读取 .xlsx格式文件转成list
  • 原文地址:https://www.cnblogs.com/wujiwen/p/9782394.html
Copyright © 2020-2023  润新知