mybatis-plus 代码生成工具报错:java.lang.NoSuchFieldError: GAUSS

目录

一、背景

二、问题

三、解决方案

1、网上的答案:

2、自己的方案:

四、总结:

一、背景

框架:springboot2.2.4.RELEASE、mybatis-plus3.3.1版本

二、问题

使用mybatis-plus已集成的自动生成代码框架生成代码

我当时查看mybatis-plus官网文档的时候,也看到了他写的注意事项:

 然后 我就只针对引入的mybatis-plus-generator包依赖最新版本3.5.1

结果导致根据官网配置好生成代码的main方法之后,执行报错:

10:43:00.524 [main] DEBUG com.baomidou.mybatisplus.generator.AutoGenerator - ==========================准备生成文件...==========================
10:43:00.675 [main] WARN org.apache.velocity.deprecation - configuration key 'file.resource.loader.unicode' has been deprecated in favor of 'resource.loader.file.unicode'
10:43:00.681 [main] WARN org.apache.velocity.deprecation - configuration key 'file.resource.loader.class' has been deprecated in favor of 'resource.loader.file.class'
Exception in thread "main" java.lang.NoSuchFieldError: GAUSS
	at com.baomidou.mybatisplus.generator.config.querys.DbQueryRegistry.<init>(DbQueryRegistry.java:44)
	at com.baomidou.mybatisplus.generator.config.DataSourceConfig.getDbQuery(DataSourceConfig.java:102)
	at com.baomidou.mybatisplus.generator.config.querys.DecoratorDbQuery.<init>(DecoratorDbQuery.java:57)
	at com.baomidou.mybatisplus.generator.IDatabaseQuery$DefaultDatabaseQuery.<init>(IDatabaseQuery.java:97)
	at com.baomidou.mybatisplus.generator.config.builder.ConfigBuilder.getTableInfoList(ConfigBuilder.java:139)
	at com.baomidou.mybatisplus.generator.engine.AbstractTemplateEngine.batchOutput(AbstractTemplateEngine.java:226)
	at com.baomidou.mybatisplus.generator.AutoGenerator.execute(AutoGenerator.java:179)
	at com.baomidou.mybatisplus.generator.FastAutoGenerator.execute(FastAutoGenerator.java:213)
	at 

三、解决方案

1、网上的答案:

一开始直接搜索

Exception in thread "main" java.lang.NoSuchFieldError: GAUSS
    at com.baomidou.mybatisplus.generator.config.querys.DbQueryRegistry.<init>(DbQueryRegistry.java:44)这部分错误信息

还真的能在网上搜索到相同的问题,别人的解决方案是因为generator包和mybatis-plus包引入的mybatis-plus-extension包版本不一致导致;我一开始也是根据他的解决方式去重,在generator依赖中排除mybatis-plus-extension。但是问题一样存在。

2、自己的方案:

最后没办法只能debug一步步的跟进代码最后排查到:

mybatisplus.annotation的3.3.1包中的DbType枚举类型没有GAUSS等等类型。

 最后mybatis-plus也改成3.5.1版本才有对应的枚举类中的值。

四、总结:

1、遇到问题需要定位到问题的本质,不能直接网上搜索答案(需要瞎猫碰到死耗子刚好解决你的问题那最好,不然你需要对网上的答案一个个的尝试之后才知道是否可行)。

2、我们在实际开发的时候是引入mybatis-plus的启动器,所以不能只是引入最新的generator的版本依赖。需要引入启动器最新版本依赖。(这个是我自己没有看清楚注意事项导致)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值