org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/String;JZ)
  QZk68cottNOH 2023年11月02日 75 0

问题导出: 在使用 Java API 实现本地文件上传到 HDFS 出现了如下所示错误 org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/String;JZ)

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class ExcelUploader {

    public static void main(String[] args) {
        Configuration conf = new Configuration();
        conf.set("fs.defaultFS", "hdfs://localhost:9000");

        try {
            FileSystem hdfs = FileSystem.get(conf);
            Path hdfsPath = new Path("/path/to/destination/file.xlsx");
            Path localPath = new Path("/path/to/source/excel.xlsx");

            hdfs.copyFromLocalFile(localPath, hdfsPath);
            
            System.out.println("Excel file uploaded successfully!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

问题主要出现在第16行使用这个函数将文件上传至hdfs,然后网上搜索了下问题出错在哪里,这里可以看下我给的参考文献2,大概的意思就是我们本地需要将这两个文件hadoop.dll和winutil.exe两个文件放到到C:\windows\system32 。 其中这两个文件是在你安装 hadoop 目录下:hadoop\bin 里面可以找到。

这样问题就完美解决了。

<br> 参考文章:

1.hadoop的官网下载和各版本下载方法 2.方案解决

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
QZk68cottNOH
最新推荐 更多

2024-05-31