• SpringCloud启动异常Stopping service [Tomcat]


    问题场景:

      领导让我搭建一套Jenkins实现自动化部署,项目是SpringCloud项目,配置的过程很顺利,给我提供了一台服务器做部署测试(服务器以前是做dev环境,很长时间没人用了)

      我把所有项目配置上,但至少一半构建失败,异常信息:[main] INFO  o.a.catalina.core.StandardService -Stopping service [Tomcat]

      启动日志的最后一行就是这个,没有任何有用的信息,找了很多资料,耽误了2天时间终于解决了。

      解决思路:首先要明确一点,既然是Tomcat自动停止了,肯定是有代码报错,只是你的项目没有打印错误日志。

      解决办法:

      1.  给启动类加上try..catch...并打印catch的信息。

    @SpringBootApplication
    public class Application {
        static Logger logger = LoggerFactory.getLogger(Application .class);
        public static void main(String[] args) {
            try {
                SpringApplication.run(Application .class, args);
                logger.info("启动成功!");
            } catch (Exception e) {
                logger.error("启动异常", e);
            }
            
        }
    }

      2. 由于Tomcat的默认日志工具和SpringCloud的默认日志工具是不一样的:Tomcat使用的是log4j;SpringBoot使用的是Logback。

      我配置的也是Logback,所以只能输出logback日志,而tomcat的log4j的日志并没有输出。这种情况我们采用Slf4j,Slf4j并不是日志输出工具,他的作用是日志继承接口,用于整合不同的日志工具。

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>jcl-over-slf4j</artifactId>
    <version>1.8.0-beta4</version>
    </dependency>

      这个依赖可以将log4j输出到slf4j,从而用sl4j输出。

      经过这两个配置就可以看到错误日志了。

      我的错误信息是: java.lang.IllegalArgumentException: Could not resolve placeholder 'kafka.ip' in value "${kafka.ip}"

      配置文件都放在Spring Cloud Config里,我用idea本地使用dev服务器的配置是可以正常启动的。再检查服务器里的配置文件,发现config的文件是读取本地的, 并不是实时从git上来取,如下图:

    config-common.properties
    config-log.properties
    config-mongodb.properties
    config-mysql.properties
    ........

      在服务器上每个项目目录有一个config文件夹,config文件夹有配置:application.properties  bootstrap.properties  logback-spring.xml

      SpringCloud的jar启动原则,如果本地有config和lib文件夹,是不会读取jar包里面的config和lib的。我的问题在于bootstrap.properties不是最新的,重新传一份再执行java命令,启动成功。

  • 相关阅读:
    人 生 死 梦
    接口(三):
    接口(二):
    Mac下OpenCV开发环境配置(Terminal和Xcode)
    OcLint的使用
    分类Category的概念和使用流程
    @class
    内存管理
    点语法
    多态的概念和用法
  • 原文地址:https://www.cnblogs.com/huanshilang/p/12975009.html
Copyright © 2020-2023  润新知