baomidou / mybatis-plus

An powerful enhanced toolkit of MyBatis for simplify development
https://baomidou.com
Apache License 2.0
16.42k stars 4.31k forks source link

[错误报告]: JDK8 + springboot-2.7.18 + mybatis-plus-3.5.8 编译错误:jsqlparser 5.0 不支持, 是 JDK 的问题吗,JDK暂时不能升级 #6497

Closed phial3 closed 2 weeks ago

phial3 commented 1 month ago

确认

当前程序版本

3.5.8

问题描述

  bad class file: /Users/admin/.m2/repository/com/github/jsqlparser/jsqlparser/5.0/jsqlparser-5.0.jar(net/sf/jsqlparser/JSQLParserException.class)
    class file has wrong version 55.0, should be 52.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
[INFO] 1 error

详细堆栈日志

bad class file: /Users/admin/.m2/repository/com/github/jsqlparser/jsqlparser/5.0/jsqlparser-5.0.jar(net/sf/jsqlparser/JSQLParserException.class)
    class file has wrong version 55.0, should be 52.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
[INFO] 1 error
[INFO] -------------------------------------------------------------
JoeyBling commented 1 month ago

JSQLParser-4.9 是最后一个兼容 JDK8 的版本。最新的 JSQLParser-5.0 依赖于 JDK11

有关详细信息,请参阅迁移指南

phial3 commented 1 month ago

JSQLParser-4.9 是最后一个兼容 JDK8 的版本。最新的 JSQLParser-5.0 依赖于 JDK11

有关详细信息,请参阅迁移指南

那就是不能直接升级 mybatis-plus 3.5.8 是吧,需要排除掉jsqlparser 5.0, 自行解决依赖jsqlparser 4.9 应该可行

JoeyBling commented 1 month ago

我看发行说明默认支持SpringBoot3了,SpringBoot2使用应该不会保证稳定

imtzc commented 1 month ago

JSQLParser-4.9 是最后一个兼容 JDK8 的版本。最新的 JSQLParser-5.0 依赖于 JDK11

有关详细信息,请参阅迁移指南

那就是不能直接升级 mybatis-plus 3.5.8 是吧,需要排除掉jsqlparser 5.0, 自行解决依赖jsqlparser 4.9 应该可行

升级日志中说明了 jsqlparser 5.0 是为了解决sql的for update的bug,显然排除掉不合理呀。除非官方有其他方案修复bug。

ouyang7923 commented 1 month ago

mp3.5.8还未到放弃jdk8的程度,却有部分依赖已脱离jdk8,这应该是矛盾的吧

qmdx commented 3 weeks ago

请升级 JDK 11 完全兼容 JDK8

nieqiurong commented 3 weeks ago

后面计划发型多个版本适配模块,mybatis-plus-jsqlparser适用于最新版本,mybatis-plus-jsqlparser-{version}为升级之后不兼容的特定jsqlparser版本.

<!--最新版本jsqlparser适配,适用于jdk1.8以上版本-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-jsqlparser</artifactId>
    <version>3.5.9</version>
</dependency>
<!--jdk1.8使用-->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-jsqlparser-4.9</artifactId>
    <version>3.5.9</version>
</dependency>