Мне также интересно писать файлы локально на датоде. Для этого я использовал java.io.FileWriter и java.io.BufferedWriter:
FileWriter fstream = new FileWriter("log.out",true);
BufferedWriter bout = new BufferedWriter(fstream);
bout.append(build.toString());
bout.close();
Он создает файл только при выполнении через eclipse. При запуске в формате .jar с помощью следующей команды:
hadoop jar jarFile.jar Mainclass
это ничего не создает. Я не знаю, проблема ли это в неправильном исполнении, неправильной настройке или просто в отсутствии чего-либо
На самом деле это только для создания файла журнала для отладки. Фактические файлы, которые я хочу, чтобы датодел записывал локально, создаются через Runtime.getRuntime()
. Однако происходит то же самое. Если выполнение осуществляется через затмение, все в порядке. Вне затмения это выглядит нормально, но файл никогда не создается.
Перед тем, как делать это в кластере, он должен работать на одном узле, поэтому на данный момент все дело в установке на одном компьютере.