SpringBoot 版本不管多少, 只要引入了hive-jdbc, 他指定会让你jar包冲突, 因为不是内嵌tomcat问题,就是和tomcat jar包冲突
遇到了大坑,所以在这里记录下,让各位不要遇到这种问题了
这次使用tomcat进行启动的时候,有遇到了错误
tomcat 作为容器进行启动的时候爆出的错误
上面这个错误tomcat8.0启动会报这个错误
tomcat8.5会报这个错误
Caused by: java.lang.StackOverflowError at org.apache.logging.log4j.spi.Logg
就是因为引入了这个jar包
org.apache.hive hive-jdbc 3.1.1 这个Hive-jdbc的jar包中,引入了很多的jar包,所以要是冲突了需要把个别的冲突jar包进行排除掉 <dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>3.1.1</version>
<exclusions>
<exclusion>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.eclipse.jetty.orbit</groupId>
<artifactId>*</artifactId>
</exclusion>
<exclusion>
<groupId>org.eclipse.jetty.aggregate</groupId>
<artifactId>*</artifactId>
</exclusion>
<exclusion>
<groupId>tomcat</groupId>
<artifactId>*</artifactId>
</exclusion>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
<exclusion>
<groupId>org.mortbay.jetty</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
以上之后重新打包,tomcat启动成功!
=2019年5月8日08:48:04更新=
最后再说一句:如果你只需要hive-jdbc这个jar包
请这样写
org.apache.hive hive-jdbc 3.1.1 * * 排除所有其他无关jar包