Exception in thread "main" java.lang.IllegalArgumentException: Wrong FS: hdfs://nameservice1/user/dub/data/analyze/CY001/20151014/me
mberdata, expected: file:///
at org.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:645)
at org.apache.hadoop.fs.RawLocalFileSystem.pathToFile(RawLocalFileSystem.java:80)
at org.apache.hadoop.fs.RawLocalFileSystem.listStatus(RawLocalFileSystem.java:367)
at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1485)
at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1525)
at org.apache.hadoop.fs.FileSystem$4.<init>(FileSystem.java:1682)
at org.apache.hadoop.fs.FileSystem.listLocatedStatus(FileSystem.java:1681)
at org.apache.hadoop.fs.ChecksumFileSystem.listLocatedStatus(ChecksumFileSystem.java:585)
at org.apache.hadoop.fs.FileSystem$5.<init>(FileSystem.java:1726)
at org.apache.hadoop.fs.FileSystem.listFiles(FileSystem.java:1723)
at com.symbol.data.coordinate.hdfs.HUtils.judgeFilePathExit(HUtils.java:85)
at com.symbol.data.coordinate.OzClient.startCoordinator(OzClient.java:83)
mberdata, expected: file:///
at org.apache.hadoop.fs.FileSystem.checkPath(FileSystem.java:645)
at org.apache.hadoop.fs.RawLocalFileSystem.pathToFile(RawLocalFileSystem.java:80)
at org.apache.hadoop.fs.RawLocalFileSystem.listStatus(RawLocalFileSystem.java:367)
at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1485)
at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1525)
at org.apache.hadoop.fs.FileSystem$4.<init>(FileSystem.java:1682)
at org.apache.hadoop.fs.FileSystem.listLocatedStatus(FileSystem.java:1681)
at org.apache.hadoop.fs.ChecksumFileSystem.listLocatedStatus(ChecksumFileSystem.java:585)
at org.apache.hadoop.fs.FileSystem$5.<init>(FileSystem.java:1726)
at org.apache.hadoop.fs.FileSystem.listFiles(FileSystem.java:1723)
at com.symbol.data.coordinate.hdfs.HUtils.judgeFilePathExit(HUtils.java:85)
at com.symbol.data.coordinate.OzClient.startCoordinator(OzClient.java:83)
at com.symbol.data.coordinate.OzClient.main(OzClient.java:19)
这个异常 我在本地正常、提交到服务器上报异常。
这个问题就是找不到1:core-site.xml、hdfs-site.xml文件:解决办法:conf.addResource(new Path("/hadoop/core-site.xml"));
conf.addResource(new Path("/hadoop/hdfs-site.xml"));
2、提交到服务报异常是因为FileSystem.get(getConf());这个类返回的本地文件系统、而不是分布式文件系统
解决办法:FileSystem.get(new URI(Utils.getKey("fs.defaultFS")),getConf());