Flume【问题记录 02】【java.lang.NoSuchMethodError:com.google.common.base.Preconditions.checkArgument】【避坑指南】

简介: 【2月更文挑战第18天】Flume【问题记录 02】【java.lang.NoSuchMethodError:com.google.common.base.Preconditions.checkArgument】【避坑指南】

问题

使用hdfs作为sinks时报错信息如下:

2021-08-24 15:10:11,638 INFO avro.ReliableSpoolingFileEventReader: 
Preparing to move file /tmp/logs/log.txt to /tmp/logs/log.txt.COMPLETED
2021-08-24 15:10:15,199 INFO hdfs.HDFSDataStream: 
Serializer = TEXT, UseRawLocalFileSystem = false
2021-08-24 15:10:15,240 ERROR hdfs.HDFSEventSink: process failed
# 删除一些无用的报错信息
Exception in thread "SinkRunner-PollingRunner-DefaultSinkProcessor" 
java.lang.NoSuchMethodError: com.google.common.base.
Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)V
        at org.apache.hadoop.conf.Configuration.set(Configuration.java:1357)
        at org.apache.flume.sink.
        DefaultSinkProcessor.process(DefaultSinkProcessor.java:67)
        at org.apache.flume.SinkRunner$PollingRunner.run(SinkRunner.java:145)
        at java.lang.Thread.run(Thread.java:748)

解决

问题出在 NoSuchMethodError,但是这个类在哪个jar文件里,这是个问题!!!这种问题只能求助无私的分享者《线索一》《Hive文件上传HDFS出错》

# 查询guava的版本
[root@tcloud ~]# find /usr/local/hadoop-3.1.3/ -name '*guava-*'
/usr/local/hadoop-3.1.3/share/hadoop/hdfs/lib/guava-27.0-jre.jar
/usr/local/hadoop-3.1.3/share/hadoop/common/lib/guava-27.0-jre.jar

[root@tcloud ~]# find /usr/local/flume/ -name '*guava-*'
/usr/local/flume/lib/guava-11.0.2.jar

# 删掉flume的低版本guava-11.0.2.jar【先做备份】
[root@tcloud ~]# rm /usr/local/flume/lib/guava-11.0.2.jar
# 复制${HADOOP_HOME}/share/hadoop/common/lib/guava-27.0-jre.jar到/usr/local/flume/lib/
[root@tcloud ~]# cp /usr/local/hadoop-3.1.3/share/hadoop/common/lib/guava-27.0-jre.jar/usr/local/flume/lib/

[root@tcloud ~]# find /usr/local/flume/ -name '*guava-*'
/usr/local/flume/lib/guava-27.0-jre.jar

测试成功了!感谢无私的程序员朋友!:+1: :+1: :+1:

目录
相关文章
|
2月前
|
Java Unix 应用服务中间件
使用java service wrapper把windows flume做成服务
使用java service wrapper把windows flume做成服务
|
1月前
Error:java.util.zip.ZipException: duplicate entry: com/google/firebase/iid/zzc.class ,EvalIssueExcep
Error:java.util.zip.ZipException: duplicate entry: com/google/firebase/iid/zzc.class ,EvalIssueExcep
9 0
|
9天前
|
Java 关系型数据库 MySQL
Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
【4月更文挑战第12天】Elasticsearch【问题记录 01】启动服务&停止服务的2类方法【及 java.nio.file.AccessDeniedException: xx/pid 问题解决】(含shell脚本文件)
46 3
|
1月前
|
Shell
Flume【问题记录 01】【at org.apache.flume.node.Application.main(Application.java:xxx) 类问题整理+其他类型问题总结】【避坑指南】
【2月更文挑战第17天】Flume【问题记录 01】【at org.apache.flume.node.Application.main(Application.java:xxx) 类问题整理+其他类型问题总结】【避坑指南】
56 2
|
4月前
|
SQL JSON Java
Java【问题记录 02】对象封装+固定排序+list All elements are null引起的异常处理+Missing artifact com.sun:tools:jar:1.8.0
Java【问题记录 02】对象封装+固定排序+list All elements are null引起的异常处理+Missing artifact com.sun:tools:jar:1.8.0
43 0
|
4月前
|
关系型数据库 MySQL Java
Elasticsearch【问题记录 01】启动&停止服务的2类方法及 java.nio.file.AccessDeniedException: xx/pid 问题解决(含启停shell脚本)
Elasticsearch【问题记录 01】启动&停止服务的2类方法及 java.nio.file.AccessDeniedException: xx/pid 问题解决(含启停shell脚本)
73 0
|
4月前
|
Java 数据库
Java【问题记录 04】时间戳类型字符串{Timestamp@15601}2021-07-14 18:56:53.0变成带T的Object类型2021-07-14T10:56:53.000+0000
Java【问题记录 04】时间戳类型字符串{Timestamp@15601}2021-07-14 18:56:53.0变成带T的Object类型2021-07-14T10:56:53.000+0000
22 0
|
4月前
|
Java
Java【问题记录 03】三目运算符失效问题刨根问底(及NPE分析)
Java【问题记录 03】三目运算符失效问题刨根问底(及NPE分析)
22 1
|
6月前
|
设计模式 消息中间件 缓存
JAVA设计模式第五讲:设计模式在 Google Guava 的应用
JAVA设计模式第五讲:设计模式在 Google Guava 的应用
|
Java API Maven
Guava:google公司开发的一款Java类库扩展工具包
Guava:google公司开发的一款Java类库扩展工具包
337 0