ファイルをftpサーバからhdfsに転送したい。次のようにFTP TO HDFS、デモコード:私はこの方法を試してみましたHadoop FTPFileSystem.listStatus(パスパス)が機能しないのはなぜですか?
Configuration conf = new Configuration();
FTPFileSystem ftpfs = new FTPFileSystem();
ftpfs.setConf(conf);
ftpfs.initialize(new URI(ftpConnectStr), conf);
Path homeDirectory = ftpfs.getHomeDirectory();
System.out.println(homeDirectory.toString());
FileStatus[] fileStatuses = ftpfs.listStatus(new Path("/"));
for(FileStatus fileStatus : fileStatuses){
System.out.println(fileStatuses.length);
System.out.println(fileStatus.toString());
}
boolean test = ftpfs.mkdirs(new Path("test"));
System.out.println(test);
をftpfs.listStatus(new Path("/"))
が動作しない、それが何を示していないが、ftpサーバは、二つのディレクトリとftpfs.mkdirs(new Path("test"))
作業罰金、次のように結果を実行しているプログラムがあります。
とftpサーバのdirctoryは、次のように:
Googleで検索しましたが、少しの情報が見つかりました。どうしてか分かりません。あなたが私を助けることができれば、私は非常に感謝します、ありがとう
@MartinPrikryl https://hadoop.apache.org/docs/r2.4.1/api/org/apache/hadoop/fs/ftp/FTPFileSystem.html#listStatus(org.apache.hadoop.fs。パス) – Smittey
Hadoopのログファイルを表示できますか? –
ftpフォルダ内のファイルに対するファイルアクセス許可は何ですか?あなたのソフトウェアを実行しているプロセスはそれらを見ることができますか?それには正しいパーミッションがありますか?それはchmod 777または何かを確認するためにダミーファイルを入れてすぐにテストを与える – Smittey