Spring 启动问题 :MetricsTrackerFactory 与 MicrometerMetricsTrackerFactory 版本不匹配

在启动SpringBoot 2.1.4 RELEASE项目时遇到BeanCreationException,错误源于MetricsTrackerFactory接口与MicrometerMetricsTrackerFactory实现类的版本不匹配。通过执行mvn dependency:tree命令发现存在HikariCP的两个不同版本。问题根源在于个人引入的包与项目基础框架包产生了冲突,特别是HikariCP-java7。解决方法是排除该冲突依赖,具体操作是在相关依赖中剔除HikariCP-java7。

问题出现:

在启动spring boot的项目时报错:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘quartzDataSourceInitializer’: Invocation of init method failed; nested exception is java.lang.AbstractMethodError: com.zaxxer.hikari.metrics.micrometer.MicrometerMetricsTrackerFactory.create(Ljava/lang/String;Lcom/zaxxer/hikari/metrics/PoolStats;)Lcom/zaxxer/hikari/metrics/MetricsTracker;
公司用的是2.1.4 RELEASE版本
这个看起来就是MetricsTrackerFactory 接口 和 MicrometerMetricsTrackerFactory实现类版本不匹配
为什么会这样想呢,因为一般来说,公司搭建好的脚手架内部是不可能出现版本冲突的情况的。这种情况的产生一般是由于自己引入的包和脚手架的包发生了冲突。
因为使用mvn dependency:tree>tree.txt命令打印出整个依赖。
打开生成的tree.txt在其中搜索发现,对于hikari依赖出现两个版本:
在这里插入图片描述
上面那个版本是我自己引入的,因此解决方法就是在这个包中剔除Hikari CP-java7即可。

        <dependency>
            <groupId>com.nio.swc.sas</groupId>
            <artifactId>caduceus</artifactId>
            <version>${caduceus.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>com.zaxxer</groupId>
                    <artifactId>HikariCP-java7</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值