关闭

java.lang.IllegalArgumentException: Wrong FS: hdfs:/ expected file:///

标签: hadoopfilesystem
1180人阅读 评论(0) 收藏 举报
分类:

Java代码如下:

  1. FileSystem fs = FileSystem.get(conf);
  2. in = fs.open(new Path("hdfs://master:9000/user/hmail/output/part-00000"));

抛出异常如下:

  1. Exception in thread "main" java.lang.IllegalArgumentException: Wrong FS: hdfs://192.168.130.54:19000/user/hmail/output/part-00000, expected: file:///
  2. at org.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:310)
  3. at org.apache.hadoop.fs.RawLocalFileSystem.pathToFile(RawLocalFileSystem.java:47)
  4. at org.apache.hadoop.fs.RawLocalFileSystem.getFileStatus(RawLocalFileSystem.java:357)
  5. at org.apache.hadoop.fs.FilterFileSystem.getFileStatus(FilterFileSystem.java:245)
  6. at org.apache.hadoop.fs.ChecksumFileSystem$ChecksumFSInputChecker.<init>(ChecksumFileSystem.java:125)
  7. at org.apache.hadoop.fs.ChecksumFileSystem.open(ChecksumFileSystem.java:283)
  8. at org.apache.hadoop.fs.FileSystem.open(FileSystem.java:356)
  9. at com.netease.hadoop.HDFSCatWithAPI.main(HDFSCatWithAPI.java:23)
 
解决方案
hadoop需要把集群上的core-site.xml和hdfs-site.xml放到当前工程下。eclipse工作目录的bin文件夹下面

因为是访问远程的HDFS 需要通过URI来获得FileSystem.
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:6183次
    • 积分:167
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:7篇
    • 译文:0篇
    • 评论:2条
    最新评论