Hadoop fs.copyToLocalFile错误

 fs.copyToLocalFile(new Path("/study1/1.txt"), new Path("C:/Users/Administrator/Desktop/d2.txt"));

报错

log4j:WARN No appenders could be found for logger (org.apache.hadoop.util.Shell).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
Exception in thread "main" java.lang.RuntimeException: java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset. -see https://wiki.apache.org/hadoop/WindowsProblems
    at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:722)
    at org.apache.hadoop.util.Shell.getSetPermissionCommand(Shell.java:256)
    at org.apache.hadoop.util.Shell.getSetPermissionCommand(Shell.java:273)
    at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:767)
    at org.apache.hadoop.fs.RawLocalFileSystem$LocalFSFileOutputStream.<init>(RawLocalFileSystem.java:235)
    at org.apache.hadoop.fs.RawLocalFileSystem$LocalFSFileOutputStream.<init>(RawLocalFileSystem.java:219)
    at org.apache.hadoop.fs.RawLocalFileSystem.createOutputStreamWithMode(RawLocalFileSystem.java:314)
    at org.apache.hadoop.fs.RawLocalFileSystem.create(RawLocalFileSystem.java:302)
    at org.apache.hadoop.fs.RawLocalFileSystem.create(RawLocalFileSystem.java:334)
    at org.apache.hadoop.fs.ChecksumFileSystem$ChecksumFSOutputSummer.<init>(ChecksumFileSystem.java:399)
    at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:462)
    at org.apache.hadoop.fs.ChecksumFileSystem.create(ChecksumFileSystem.java:441)
    at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:1067)
    at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:1048)
    at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:937)
    at org.apache.hadoop.fs.FileUtil.copy(FileUtil.java:391)
    at org.apache.hadoop.fs.FileUtil.copy(FileUtil.java:364)
    at org.apache.hadoop.fs.FileUtil.copy(FileUtil.java:314)
    at org.apache.hadoop.fs.FileSystem.copyToLocalFile(FileSystem.java:2375)
    at org.apache.hadoop.fs.FileSystem.copyToLocalFile(FileSystem.java:2344)
    at org.apache.hadoop.fs.FileSystem.copyToLocalFile(FileSystem.java:2320)
    at hadoop290.hdfs.HdfsClient.main(HdfsClient.java:27)
Caused by: java.io.FileNotFoundException: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset. -see https://wiki.apache.org/hadoop/WindowsProblems
    at org.apache.hadoop.util.Shell.fileNotFoundException(Shell.java:534)
    at org.apache.hadoop.util.Shell.getHadoopHomeDir(Shell.java:555)
    at org.apache.hadoop.util.Shell.getQualifiedBin(Shell.java:578)
    at org.apache.hadoop.util.Shell.<clinit>(Shell.java:675)
    at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:78)
    at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:3420)
    at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:3416)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3258)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:470)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:223)
    at hadoop290.hdfs.HdfsClient.main(HdfsClient.java:21)
Caused by: java.io.FileNotFoundException: HADOOP_HOME and hadoop.home.dir are unset.
    at org.apache.hadoop.util.Shell.checkHadoopHomeInner(Shell.java:454)
    at org.apache.hadoop.util.Shell.checkHadoopHome(Shell.java:425)
    at org.apache.hadoop.util.Shell.<clinit>(Shell.java:502)
    ... 7 more

  fs.copyToLocalFile(false,new Path("/study1/1.txt"), new Path("C:/Users/Administrator/Desktop/d2.txt"),true);

加一个false 和true 就好了!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值