首先 先把你虚拟机和本机网络链接弄通 (详情看上一篇) 一些关于mapreduce 和hadoop的配置都在上一篇
安装eclipse 的hadoop Map/Reduce插件详情 看其他博客园.........
这里里面配置的是你windows下的hadoop 高版本貌似兼容低版本 下载请参考网上
我这里有hadoop-2.6.4的链接大家参考下载 https://www.lanzous.com/i2h1e2b
一般都会报winutils.exe 找不到呀各种错误 需要吧 你hadoop bin下的 hadoop.dll 文件放在你windows下system32文件夹下 就会解决
代码不贴了自己玩吧
忘了 你写的代码main函数或者函数中要包括
System.setProperty("hadoop.home.dir", "D:\\Program Files\\windowshadoop\\hadoop-2.6.4");
这个不弄会写不出文件到虚拟机里的 后面路径是你windows系统下的hadoop路径 网上的有的要改什么配置 修改什么xml还有环境变量都是不存在的 不用弄就能访问
还有 你windows下访问虚拟机hdfs文件权限问题 你可能无法直接删除 你可以设置一下文件路径权限为所有用户共有 hdfs dfs -chmod 777 /+你的路径 举个例子 hdfs dfs -chmod 777 /mymapreduce1/in 修改 mymapreduce1/in 下的目录权限
一个wordcount代码 别copy运行了我没给你文件格式大致看一下
package mapreduce;import java.io.IOException; import java.util.StringTokenizer; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.Mapper; import org.apache.hadoop.mapreduce.Reducer; import org.apache.hadoop.mapreduce.lib.input.FileInputFormat; import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; public class WordCount{ public static class MyMapper extends Mapper
这个DFSLOCATION 自己配吧注意端口号要和你虚拟机hadoop上的端口号相同我这里是9000