eclipse串連遠程hadoop叢集開發時報錯錯誤資訊:Exception in thread "main" java.io.IOException:Failed to set permissions of path:\tmp\hadoop-ysc\mapred\staging\ysc-2036315919\.staging to 0700解決方案(經筆者在hadoop1.2.0+jdk1.7下驗證通過):0.安裝jdk,ant,並且配置好環境變數安裝配置jdk不再多說,ant參考我的文章:http://blog.csdn.net/shan9liang/article/details/89486461.首先到官網上把該版本hadoop的tar包下載下來,並解壓到$HADOOP_HOME目錄下2.修改hadoop-1.2.0\src\core\org\apache\hadoop\fs下的FileUtil類private static void checkReturnValue(boolean rv, File p, FsPermission permission ) throws IOException { if (!rv) { throw new IOException("Failed to set permissions of path: " + p + " to " + String.format("%04o", permission.toShort())); } }將這個拋異常操作注釋掉或者把throw new IOException改為LOG.warn3.進入到$HADOOP_HOME/src目錄中,修改saveVersion.sh檔案,因為原saveVersion.sh產生的package-info.java有問題。更正內容為:user=`whoami` #此處修改成固定值,如user=jialin3、修改$HADOOP_HOME\build.xml,搜尋autoreconf,移除匹配的6個executable="autoreconf"的exec配置 ,如: <exec executable="autoreconf" dir="${c++.task-controller.src}" searchpath="yes" failonerror="yes"> <arg value="-i"/> </exec> 共有6處,將該語言塊刪除4、 修改hadoop安裝目錄下的\build.xml 指定java版本<property name="javac.version" value="1.6"/> 如是1.7就改為1.75、在命令列切換到$HADOOP_HOME,執行ant6、用新產生的$HADOOP_HOME\build\hadoop-core-1.*.*-SNAPSHOT.jar替換nutch的hadoop-core-*.*.*.jar
我已經編譯好了一個,:http://download.csdn.net/detail/shan9liang/5946607