Exception in thread "main" java.lang.IllegalArgumentException: Pathname /D:/LenovoQMDownload/白华强/succeful from hdfs://192.168.137.111:9000/D:/LenovoQMDownload/白华强/succeful is not a valid DFS filename.
时间: 2023-08-03 16:07:05 浏览: 252
这个异常的原因是你提供的路径名不是有效的 DFS 文件名。在 Hadoop 文件系统中,DFS 文件名应该是类似 "/path/to/file" 的格式,而不是带有驱动器标识符(如 "D:")的本地文件路径。
如果你想在 Hadoop 文件系统中访问本地文件系统中的文件,你可以使用 `file://` 前缀来指定路径。例如,对于你提供的路径,应该使用 `file:///D:/LenovoQMDownload/白华强/succeful`。
请确保提供的路径名符合 Hadoop 文件系统的命名规则,以及正确指定文件系统协议(如 `hdfs://` 或 `file://`)。
相关问题
Exception in thread "main" java.lang.IllegalArgumentException: Wrong FS: hdfs://hadoop102:8020/output, expected: file:///
这个错误通常是因为在代码中使用了错误的文件系统前缀。在这个例子中,你的代码期望使用本地文件系统(file://),但实际上使用了Hadoop分布式文件系统(hdfs://)。
要解决这个问题,你可以修改代码中的文件路径,将"hdfs://"替换为"file://"。或者,如果你确实希望使用Hadoop文件系统,那么你需要确保你的代码正确配置了Hadoop环境,并且Hadoop集群正常运行。
Exception in thread "main" java.lang.IllegalArgumentException: Wrong FS: hdfs://hadoop102/mydir, expected: file:///
这个错误信息是在Java程序中运行时抛出的,具体来说是`IllegalArgumentException`类型的异常,原因是因为程序试图使用`hdfs:`(Hadoop分布式文件系统)路径,但预期的是本地文件系统的路径,即`file:///`。HDFS是用于处理大规模数据存储的分布式文件系统,而`file:///`通常用于表示本地文件。
异常的意思是当你尝试使用不支持HDFS路径的操作,比如可能是一个文件读写操作,但你提供的路径实际上是针对Hadoop集群中的资源,而不是直接在本地机器上可用的文件。解决这个问题,你需要确认你的代码是否正确设置了路径,如果是针对本地文件的操作,应该使用`file:///mydir`,如果需要处理HDFS,应该使用相应的Hadoop API。
阅读全文