更新时间:2022-06-13 GMT+08:00
分享

依赖冲突问题修复

完成相关配置后(请确保各个配置项无误且功能正常),直接运行程序会存在依赖冲突问题,下面进行逐一修复(以下问题的修复是相关联的,上一个问题修复后重新运行而产生的后续问题)。

问题一:Logback-classic及log4j-to-slf4j的包冲突问题。

报错如下:

问题原因:

spring-boot-starter-actuator与spring-cloud-starter-huawei-devspore-datasource的Logback-classic及log4j-to-slf4j包存在冲突。

解决办法:

排除相关冲突包,排除后POM文件如下:

问题二:Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required

报错如下:

问题原因:

缺少相关依赖包:mybatis-spring-boot-starter。

解决办法:

添加相应依赖包,并去除新加入的包的冲突项,完成后POM如下图所示:

问题三:Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured

报错如下:

问题原因:

原生的springboot-dataSource被替换,一些依赖包未找到相应的yaml对应的数据源配置而报错。

解决办法:

删除相关依赖包,使其能对应SDK提供的dataSource,过程如下:

  • 删除或注释最外层的POM文件的druid-spring-boot-starter依赖项,如下图所示:

  • 删除或注释mall-mbg模块POM文件的druid-spring-boot-starter依赖项,如下图所示:

问题四:io.netty.buffer.PooledByteBufAllocator.<init>(ZIIIIIIZ)V

报错如下:

并且每一段时间会跳出报错信息:

问题原因:

Io.netty相关依赖包版本冲突问题。SDK的依赖包spring-cloud-starter-huawei-devspore-datasource所需的io.netty版本相对本项目的版本更高。项目的io.netty相关依赖包为4.1.49.Final,需升级为4.1.69.Final。

解决办法:

将io.netty的相关依赖包先进行排除,后统一引入4.1.69Final版本。

1.排除4.1.49.Final版本的io.netty相关依赖:

2. 添加4.1.69.Final版本:

按照如上的流程解决完上述四个问题,重新运行项目便可成功对接SDK。

创建ETCD client success且数据源初始化成功:

程序运行成功:

分享:

    相关文档

    相关产品