这种问题肯定是某个地方有个权限判断导致的,我们导入源码后,ctrl+h 全局搜索“Failed to set permissions”,肯定会有所发现。学习的时候在windows上面测试,那么这个权限开关就无关重要。
1:导入hadoop-1.1.2源码 core部分
2:ctrl+shift+R输入FileUtil,打开FileUtil.java
3:修改hadoop-1.1.2\src\core\org\apache\hadoop\fs\FileUtil.java
4:搜索“Failed to set permissions of path”
3: 将如下688-692行代码注释,clean一下;
/* if (!rv) {
throw new IOException("Failed to set permissions of path: " + p +
" to " +
String.format("%04o", permission.toShort()));
}*/