You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

迁移至Karate 1.3.0.RC1遇构建错误:缺失netty指定jar包

Karate 1.3.0.RC1 升级时 Netty 依赖缺失问题解决方案

问题重现

升级至Karate 1.3.0.RC1时,构建报错:

Could not find netty-resolver-dns-native-macos-4.1.66.Final-osx-aarch_64.jar (io.netty:netty-resolver-dns-native-macos:4.1.66.Final).

该依赖在Maven中央仓库对应路径无法找到,而1.2.0版本可正常构建,但存在官方已在1.3.0中修复的多线程Bug,当前项目基于Karate 0.9.6。

可行解决方案

  • 切换至Karate 1.3.0正式版:RC版本可能存在依赖配置疏漏,正式版通常会修正依赖引用逻辑,确保对应依赖包已同步至中央仓库。
  • 手动调整Netty依赖:在项目构建文件(pom.xml或build.gradle)中,排除Karate自带的有问题的Netty依赖,替换为可正常下载的兼容版本。示例Maven配置:
<dependency>
    <groupId>com.intuit.karate</groupId>
    <artifactId>karate-core</artifactId>
    <version>1.3.0.RC1</version>
    <exclusions>
        <exclusion>
            <groupId>io.netty</groupId>
            <artifactId>netty-resolver-dns-native-macos</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<!-- 添加兼容的Netty依赖 -->
<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-resolver-dns-native-macos</artifactId>
    <version>4.1.77.Final</version>
    <classifier>osx-aarch_64</classifier>
</dependency>
  • 检查Maven仓库配置:若使用第三方镜像仓库(如国内镜像),可能存在同步延迟,临时切换回Maven中央仓库重试构建。
  • Apple Silicon设备特殊处理:在构建命令中添加系统属性,强制使用兼容的DNS解析实现,绕过native依赖:
mvn clean install -Dnetty.resolver.dns.default-resolver=apple-dns

内容的提问来源于stack exchange,提问作者Michael Cruz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 23:01:08