今天刚拉项目,报了一个异常,maven没有报错,但是项目无法启动。
首先查询官网,看到这个地方
看到和我的异常一模一样,但是上面的解决方案有点抽象,大致意思是要jdk1.8以上,或者引入多个依赖吧,这是一个警告warning,不是项目本身原因。然后我查询其他文章,别人说的很好:
解决方式:
引入抽象层+中间层+实现层的方式解决
引入三个下面三个依赖,重新编译:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.8.0-beta4</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.8.0-beta4</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
代码测试后,发现SLF4J的报错不存在了,但是出现了新的报错如下:
这说明SLF4J已经配置好了,但是Log4j的配置还有问题。
对于log4j的配置我一直没有尝试成功。最后,我考虑到版本的原因,原本的版本为1.8.0-beta1,我尝试使用1.8以下的。尝试成功!!!!!
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.26</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.26</version>
</dependency>
前面的依赖注销,使用这个依赖。项目启动成功!!!!!
可以看到,项目已经没有报日志的错误啦.现在项目已经启动成功啦,但是我发现其后面没有端口号信息,然后我发现是我的idea版本和jdk版本冲突的问题,我更换了jdk,出现版本号,又解决新的问题啦。