Hello World聚类代码(一) 执行后出现异常
hadoop 启动时 TaskTracker无法启动
ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Failed to set permissions of path: \tmp\hadoop-admin
\mapred\local\ttprivate to 0700
at org.apache.hadoop.fs.FileUtil.checkReturnValue(FileUtil.java:682)
at org.apache.hadoop.fs.FileUtil.setPermission(FileUtil.java:655)
at org.apache.hadoop.fs.RawLocalFileSystem.setPermission(RawLocalFileSystem.java:509)
at org.apache.hadoop.fs.RawLocalFileSystem.mkdirs(RawLocalFileSystem.java:344)
at org.apache.hadoop.fs.FilterFileSystem.mkdirs(FilterFileSystem.java:189)
at org.apache.hadoop.mapred.TaskTracker.initialize(TaskTracker.java:719)
at org.apache.hadoop.mapred.TaskTracker.<init>(TaskTracker.java:1436)
at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:3694)
eclipse运行作业 Failed to set permissions of path: \tmp\hadoop-admin\mapred\staging\Administrator-1506477061\.staging to 0700
:Windows环境下的Hadoop TaskTracker无法正常启动 包括0.20.204、0.20.205、1.0.0版本
网上的解决方案 五花八门 有的说用 0.20.204一下版本
尝试了一下网上说的修改FileUtil类 checkReturnValue方法代码 重新编译 替换原来的文件 来解决
下载http://download.csdn.net/detail/u010011737/9452487
引入项目后执行出现
Exception in thread "main" java.io.IOException: wrong value class: 0.0: null is not class org.apache.mahout.clustering.WeightedPropertyVectorWritable
at org.apache.hadoop.io.SequenceFile$Reader.next(SequenceFile.java:1932)
at org.test.mymahout.chapter07.SimpleKMeansClustering.main(SimpleKMeansClustering.java:105)
经过排查 把 WeightedVectorWritable value = new WeightedVectorWritable(); 换成WeightedPropertyVectorWritable value = new WeightedPropertyVectorWritable();即可
最后输出结果: