使用playtika.testcontainers嵌入式ClickHouse测试报错,咨询API是否变更
问题分析与解决方案
这个错误的核心原因是LZ4压缩库的类未找到,和Playtika Testcontainers的API变更无关,是项目依赖缺失或版本冲突导致的:net/jpountz/lz4/LZ4Factory 这个类属于LZ4压缩库,Testcontainers(Playtika封装的底层依赖)在启动ClickHouse容器时需要用到它,但你的项目类路径里没有这个类。
解决步骤
直接添加LZ4依赖
根据你的构建工具,把以下依赖加入项目:
Maven:<dependency> <groupId>org.lz4</groupId> <artifactId>lz4-java</artifactId> <version>1.8.0</version> <!-- 可根据Testcontainers兼容版本调整 --> <scope>test</scope> </dependency>Gradle:
testImplementation 'org.lz4:lz4-java:1.8.0'检查Playtika Testcontainers版本
如果是近期升级了Playtika Testcontainers的版本,新版本可能不再默认传递LZ4依赖。确认你使用的版本对应的依赖要求,确保必要的依赖被显式引入。排查依赖冲突
用构建工具的依赖树命令(比如Maven的mvn dependency:tree,Gradle的./gradlew dependencies)检查是否有其他库引入了不兼容的LZ4版本,如有冲突,排除掉旧版本并统一使用兼容的版本。
内容的提问来源于stack exchange,提问作者user2329454
相关产品推荐
相关产品推荐

