一,前言
前段时间在用Elastic job实现定时任务,由于需要放在在consul下面实现远程服务调用,引起了一系列问题,在这里记录一下。这里的springboot版本是1.5.10
二, 问题记录
- 项目启动错误
java.lang.SecurityException: class "javax.annotation.ManagedBean"'s signer information does not match signer information of other classes in the same package
- 这是jar包冲突引起的,移除项目模块中的spring-boot-starter依赖,父模块已经有配置了,同时添加spring-boot-starter-web依赖,这时报错异常如下:
Caused by: java.lang.NullPointerException: null
at org.springframework.boot.context.embedded.jetty.JettyEmbeddedServletContainer.getPort(JettyEmbeddedServletContainer.java:236)
- 这时报的错误就匪夷所思了,spring-boot-starter-web默认的内嵌服务器是Tomcat,为什么会报jetty的配置为空的错误。查看启动日志,发现运行的不是Tomcat服务器,而是jetty
2018-06-12 10:50:55.983 aceMarsoftCoreJob [main] INFO o.s.b.c.e.j.JettyEmbeddedServletContainerFactory - Server initialized with port: 5280
2018-06-12 10: