作者:到地球来旅行 | 来源:互联网 | 2023-07-15 12:59
一、下载Eclipse并安装二、下载exlipse的hadoopplugin三、打开MapReduce视图Window-->Perspective--
一、下载Eclipse并安装
二、下载exlipse的hadoop plugin
三、打开Map Reduce视图
Window --> Perspective --> Open perspective
![【大数据系列】在windows下连接linux 下的hadoop环境进行开发 【大数据系列】在windows下连接linux 下的hadoop环境进行开发](https://img1.php1.cn/3cd4a/24cea/243/911e7aa113e2bc97.png)
四、编辑Hadoop Location
![【大数据系列】在windows下连接linux 下的hadoop环境进行开发 【大数据系列】在windows下连接linux 下的hadoop环境进行开发](https://img1.php1.cn/3cd4a/24cea/243/a97cb3c9c92bced7.png)
![【大数据系列】在windows下连接linux 下的hadoop环境进行开发 【大数据系列】在windows下连接linux 下的hadoop环境进行开发](https://img1.php1.cn/3cd4a/24cea/243/79eece5a2ae041d1.png)
五、查看是否连接成功
![【大数据系列】在windows下连接linux 下的hadoop环境进行开发 【大数据系列】在windows下连接linux 下的hadoop环境进行开发](https://img1.php1.cn/3cd4a/24cea/243/5bbf7cc958cdb88f.png)
六、上传文件或文件夹测试是否成功
1、没有权限Permission denied
![【大数据系列】在windows下连接linux 下的hadoop环境进行开发 【大数据系列】在windows下连接linux 下的hadoop环境进行开发](https://img1.php1.cn/3cd4a/24cea/243/7c96e105d943e2e8.jpeg)
关键代码行:执行login.login的时候调用了hadoop里面的HadoopLoginModule方法,而关键是在commit方法里面,它会优先去读取HADOOP_USER_NAME系统环境变量,然后是Java环境变量,再如果没有的话就会从NTUserPrincipal里面获取。因为之前没有配置HADOOP_USER_NAME所以其获取到的是我windows系统的当前用户。
if (!isSecurityEnabled() && (user == null)) {
String envUser = System.getenv(HADOOP_USER_NAME);
if (envUser == null) {
envUser = System.getProperty(HADOOP_USER_NAME);
}
user = envUser == null ? null : new User(envUser);
}
以上解决参考自:http://blog.csdn.net/xiaoshunzi111/article/details/52062640