mybatis-plus icon indicating copy to clipboard operation
mybatis-plus copied to clipboard

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

Open phial3 opened this issue 1 year ago • 6 comments

确认

  • [X] 我使用的版本是最新版, 并且使用插件确认过项目里无依赖版本冲突
  • [X] 我已经在 issue 中搜索过, 确认问题没有被提出过
  • [X] 我已经修改标题, 将标题中的 描述 替换为遇到的问题

当前程序版本

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] -------------------------------------------------------------

phial3 avatar Sep 19 '24 02:09 phial3

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

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

JoeyBling avatar Sep 19 '24 02:09 JoeyBling

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

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

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

phial3 avatar Sep 19 '24 02:09 phial3

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

JoeyBling avatar Sep 19 '24 02:09 JoeyBling

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。

imtzc avatar Sep 21 '24 07:09 imtzc

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

ouyang7923 avatar Sep 23 '24 02:09 ouyang7923

请升级 JDK 11 完全兼容 JDK8

qmdx avatar Oct 15 '24 06:10 qmdx

后面计划发型多个版本适配模块,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>

nieqiurong avatar Oct 21 '24 06:10 nieqiurong