No suitable ClickHouse client(out of 1) found in classpath.报错

最近在做jdbc链接clickhouse的一个数据库测试任务,需要用idea链接clickhouse去增删改查。遇到了如下的错误:
No suitable ClickHouse client(out of 1) found in classpath.报错
No suitable ClickHouse client(out of 1) found in classpath.报错
搜索了很多解决方法,都没什么卵用,最后找到一个有效方法:
原因:是因为idea链接clickhouse的时候加载类maven依赖这里有问题,
一开始用的依赖:

<dependency>
    <groupId>com.clickhouse</groupId>
    <artifactId>clickhouse-jdbc</artifactId>
    <version>0.3.2-patch11</version>
    <classifier>all</classifier>
</dependency>

className用的是:

Class.forName("com.clickhouse.jdbc.ClickHouseDriver");

将maven依赖换成:

<dependency>
    <groupId>ru.yandex.clickhouse</groupId>
    <artifactId>clickhouse-jdbc</artifactId>
    <version>0.2.4</version>
</dependency>

className换成:

Class.forName("ru.yandex.clickhouse.ClickHouseDriver");

这样就能跑了,至少前面的那种报错会解决,不过会产生警告:
在这里插入图片描述
但是warning又算什么呢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误是由于 Logback 在类路径上,但 LoggerFactory 不是 Logback LoggerContext 导致的。 Logback 是一个流行的日志框架,它使用 LoggerFactory 来创建 Logger 对象。在这种情况下,Logback 库已经在类路径上,但 LoggerFactory 的实现可能与 Logback 不兼容,无法创建 LoggerContext 对象。 解决这个问题的一种方法是检查您的项目依赖关系并确保只使用一种日志框架。如果您使用的是 Logback,则应该只保留相关的 Logback 依赖项,并删除其他日志框架(如 Log4j)的依赖项。 如果您需要同时使用 Logback 和其他日志框架,可以尝试以下解决方法之一: 1. 检查依赖冲突:检查您的项目依赖关系,确保没有重复引入多个不兼容的日志框架。 2. 排除冲突依赖项:如果无法避免同时使用多个日志框架,您可以尝试通过在构建文件中排除冲突的依赖项来解决冲突。具体步骤取决于您使用的构建工具(如 Maven 或 Gradle)。 - Maven 示例: ```xml <dependency> <groupId>your-dependency-groupId</groupId> <artifactId>your-dependency-artifactId</artifactId> <version>your-dependency-version</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency> ``` - Gradle 示例: ```groovy dependencies { implementation('your-dependency-groupId:your-dependency-artifactId:your-dependency-version') { exclude group: 'org.slf4j', module: 'slf4j-log4j12' } } ``` 请根据您的具体情况选择适合的解决方法。希望能够帮助您解决问题。如果还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值