java.lang.NoSuchMethodError com.google.protobuf.CodedInputStream 依赖jar包版本冲突解决方案


java.lang.NoSuchMethodError com.google.protobuf.CodedInputStream 依赖jar包版本冲突解决方案

在一台电脑上运行无误,另外一台电脑上代码无报错,但运行时报错NoSuchMethodError,这种大概率为依赖jar包版本冲突问题
java.lang.NoSuchMethodError:com.google.protobuf.CodedInputStream.readStringRequireUtf8()Ljava/lang/String

报错的protobuf版本是3.x版本,替换为2.6.0版本就可以了
解决冲突的依赖包:
1.下载2.6.0的jar包,https://files.cnblogs.com/files/zdz8207/protobuf-java-2.6.0.zip 下载后解压为jar包,更新jar包后clean一下项目。
2.配置maven
maven可以增加exclude配置:
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.6.0</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
</exclusion>
</exclusions>
</dependency>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM