0%

java | maven 包编译冲突

先交代一下背景。

我是 java14 切换到 java8 时候发生的错误。

包是

1
2
3
4
5
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.4.5</version>
</dependency>

我是 java14 的时候,进行了 maven 构建,后来,我想把 java 切换到 java8 ,然后运行代码出现

ch/qos/logback/classic/spi/LogbackServiceProvider has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0

这是说,这个包是用 55 编译的,你的 java 版本是 52

关于这个版本可以参考

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
49 = Java 5
50 = Java 6
51 = Java 7
52 = Java 8
53 = Java 9
54 = Java 10
55 = Java 11
56 = Java 12
57 = Java 13
58 = Java 14
59 = Java 15
60 = Java 16
61 = Java 17
62 = Java 18
63 = Java 19

经过查阅资料后,这个只能修改该包的版本。所以后来换成

1
2
3
4
5
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>

解决。

请我喝杯咖啡吧~