Этот сайт работает для меня.
Просто добавьте следующие коды в мою программу WordCount :
import org.apache.hadoop.fs.*;
...
Configuration conf = new Configuration();
Path output = new Path("/the/folder/to/delete");
FileSystem hdfs = FileSystem.get(conf);
// delete existing directory
if (hdfs.exists(output)) {
hdfs.delete(output, true);
}
Job job = Job.getInstance(conf, "word count");
...
Вам не нужно явно добавлять hdfs://hdfshost:port
.
Извините, на самом деле найденный ответом в JLS: http://java.sun.com/docs/books/jls/third_edition/html/lexical.html#40625 кажется, что имена идентификатора имеют неограниченную длину.
Также найденный подобным вопросом (хотя не появилось в моем начальном поиске, или когда я ввел заголовок вопроса, который является странным): Максимальная Длина Имени метода
Если я не ошибаюсь, предел не находится на самом языке, а в classfile формате, который ограничивает имена к 64k, таким образом, для всего практического идентификатора намерений и целей длина не является проблемой. А именно, это - определение постоянной строки в пуле, который, кажется, подразумевает, что максимальная длина составляет 16 битов:
CONSTANT_Utf8_info {
u1 tag;
u2 length;
u1 bytes[length];
}
Имена классов могут быть большим количеством проблемы для файловых систем, я соглашаюсь, я не уверен, что в настоящее время поддерживается.
При осмотре через ограничение размера, наложенное VM для имен методов затем, Вы получаете ошибку компилятора (по крайней мере, с версией javac, который я использую):
Основной java:1: представление UTF8 для строки "aaaaaaaaaaaaaaaaaaaa..." является слишком длинным для постоянного пула