• windows端hadoop项目编写java程序操纵远程hadoop集群报错(集合,分几个阶段才解决的)


    //20210326
    写在前面:今天学习hadoop“使用java调用api操作hadoop集群”阶段,在linux上运行代码很顺畅,maven和jar包一加,就运行成功了,但是迁移到windows上面就一堆问题(因为生产环境服务器肯定没有可视化界面,都是要本地jar包上传的),经过查阅资料,多次尝试,终于解决,在此记录一下

    HADOOP_HOME未设置

    • 问题简述:就是说windows上面调用hadoop api,需要在windows上面有hadoop环境(并不是安装),只需要将官网对应版本的包在本地某处解压即可

    • 解压完成之后并不能如预期顺利运行,原因是官方的包里缺少执行文键和dll文件,需要如下两个文件(github上搜winutils第一条点进去就有各个版本的)

    • 下载完成之后放在hadoop解压的bin目录下即可

    • 接下来是配置环境变量,配置环境变量我是跟着知乎一个博主做的,这边儿直接贴链接

    原文链接

    • 配置好环境变量之后,运行报错是permission deny那就直接跳第三个板块,否则第二个板块

    报错提示未实现hfs架构

    • 首先检查服务器上hadoop是否开启
    • 确认开启之后,就是jar包冲突的原因了(具体我是小白也看不懂QAQ,下面直接贴链接),把pom文件里的hadoop-core依赖删掉就行(也可以直接在build path中把对应jar包删掉,不过我idea暂时没找到在哪里删,直接把依赖去掉,然后刷新即可)

    原文链接

    提示Permission deny

    • 报错显示权限不够,这是因为本地不设置用户名直接登陆hadoop是以Administrator登录的,但是远程主机上并没有这个用户,所以需要在本地设置登录用户名

    • 此处只展示idea解决方法,eclipse没用过,网上应该有教程

    • 在idea的顶部导航栏点开红框中的edit configuration

    • 然后在VM option栏里加上如下配置(等于号后面跟你远程主机的登录名)

    • 最后应用,重新跑程序,发现运行成功~


    原文链接

    以上
    希望对大家有所帮助

  • 相关阅读:
    HDU_2047——EOF字符串排序排列问题,递推
    HDU_2046——骨牌铺放问题,递推
    HDU_2045——RPG问题,递推
    HDU_2044——蜜蜂走蜂房,递推
    HDU_2043——判断密码是否安全
    HDU_2042——递归反推
    单例模式
    抽象工厂模式
    工厂方法模式
    C#调用C++DLL传递结构体数组的终极解决方案
  • 原文地址:https://www.cnblogs.com/lavender-pansy/p/14584438.html
Copyright © 2020-2023  润新知