명령 줄없이 자바를 사용하여 하둡에서 파일을 읽는 방법을, 나는 아래의 코드내가 하둡 시스템에서 파일을 읽을 원
String uri = theFilename;
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(URI.create(uri), conf);
InputStream in = null;
try {
in = fs.open(new Path(uri));
IOUtils.copyBytes(in, System.out, 4096, false);
} finally {
IOUtils.closeStream(in);
}
을 사용하면 내가 하둡 항아리가 myjar를 실행해야이 파일을 실행하려면 그렇게 할 수 있습니다. jar com.mycompany.cloud.CatFile/filepathin_hadoop 그건 작동합니다. 하지만 어떻게 다른 프로그램에서 그렇게 할 수 있을까요? 나는 hadoop jar 명령을 사용하지 않고서도 마찬가지입니다.
코드의 동일한 부분을 첨가하고, 이클립스 ENV 변수로 HADOOP_HOME 파라미터 설정 왔지만 아직에서 System.out.println (hdfs.getHomeDirectory()); 로컬 파일 시스템 디렉토리를 인쇄합니다. – user1249655
나는 내 대답을 편집했다. String 대신 core-site.xml에 대한 경로를 사용하는 것을 잊었습니다. –