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

Java使用Protobuf时Gradle报重复处理策略未设置错误如何解决

问题原因

Gradle 7.0及以上版本对重复文件的默认处理策略为直接抛出构建失败,需要显式配置处理规则。本次报错是Person.proto文件在构建的资源处理阶段被重复扫描识别导致,同时你提供的build.gradle配置还存在语法疏漏。

解决方案
  • 第一步:先补全build.gradle的语法错误,你当前的dependencies依赖块未闭合,在implementation "com.google.protobuf:protobuf-java:$protobufVersion"代码后添加}即可。
  • 第二步:配置资源处理任务的重复文件规则,有两种可选方案:
    1. 如果你不需要将.proto源文件打入最终的jar包,直接排除所有proto文件即可,在build.gradle中添加如下配置:
    processResources {
        exclude '**/*.proto'
    }
    
    1. 如果你需要保留proto文件在构建产物中,配置重复策略为自动排除重复项即可:
    processResources {
        duplicatesStrategy = DuplicatesStrategy.EXCLUDE
    }
    
  • 额外兼容建议:你当前使用的protoc版本为4.0.0-rc-2,和protobuf-java的3.18.1版本不匹配,建议将protoc的版本调整为和protobufVersion一致的3.18.1,避免出现运行时兼容性问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 10:06:06