springboot啓動時候有可能會報log4j的棧溢出,目前很多網站上面的回答都是具體衝突是log4j-slf4j-impl-2.10.0.jar和log4j-to-slf4j-2.10.0.jar,然後給出的方案如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
有時候確實可以,但是有時候不行,我們不妨先看看spring-boot-start-logging的依賴圖
也就是說是spring-boot-starter引用了他。如果你項目裏沒有其他jar引用了spring-boot-starter那麼像上面那樣排除即可,如果你用了那麼棧溢出依然存在。
正確做法如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>