在hadoop源代码根目录下找到hadoop-common-project\hadoop-common\src\main\java\org\apache\hadoop\fs\FileUtil.java
找到canRead、canWrite、canExecute三个函数,将windows下的分支直接返回true,示例:
public static boolean canWrite(File f) {
if (Shell.WINDOWS) {
/*try {
return NativeIO.Windows.access(f.getCanonicalPath(),
NativeIO.Windows.AccessRight.ACCESS_WRITE);
} catch (IOException e) {
return false;
}*/
return true;
} else {
return f.canWrite();
}
}
然后重新编译