在Windows下MyEclipse运行JAVA程序连接HBASE读取数据出错

运行环境:Hadoop-2.5.0+Hbase-0.98.6

问题描述:

15/06/11 15:35:50 ERROR Shell: Failed to locate the winutils binary in the hadoop binary path

java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries.

    at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:356)

    at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:371)

    at org.apache.hadoop.util.Shell.<clinit>(Shell.java:364)

    at org.apache.hadoop.util.StringUtils.<clinit>(StringUtils.java:80)

    at org.apache.hadoop.security.SecurityUtil.getAuthenticationMethod(SecurityUtil.java:611)

    at org.apache.hadoop.security.UserGroupInformation.initialize(UserGroupInformation.java:272)

    at org.apache.hadoop.security.UserGroupInformation.ensureInitialized(UserGroupInformation.java:260)

    at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:790)

    at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:760)

    at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:633)

    at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2001)

    at org.apache.spark.util.Utils$$anonfun$getCurrentUserName$1.apply(Utils.scala:2001)

    at scala.Option.getOrElse(Option.scala:120)

    at org.apache.spark.util.Utils$.getCurrentUserName(Utils.scala:2001)

    at org.apache.spark.SecurityManager.<init>(SecurityManager.scala:207)

    at org.apache.spark.SparkEnv$.create(SparkEnv.scala:218)

    at org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:163)

    at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:269)

    at org.apache.spark.SparkContext.<init>(SparkContext.scala:272)

    at org.apache.spark.SparkContext.<init>(SparkContext.scala:154)

    at SparkFromHbase$.main(SparkFromHbase.scala:15)

    at SparkFromHbase.main(SparkFromHbase.scala)

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

    at java.lang.reflect.Method.invoke(Method.java:606)

    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

解答:参考http://www.cnblogs.com/hyl8218/p/5492450.html

问题解决,输出结果:

17/08/26 22:44:32 INFO client.HConnectionManager$HConnectionImplementation: Closing zookeeper sessionid=0x15e1ee0ec4c000e
colfam1:q1 ->value-1
17/08/26 22:44:32 INFO zookeeper.ZooKeeper: Session: 0x15e1ee0ec4c000e closed
17/08/26 22:44:32 INFO zookeeper.ClientCnxn: EventThread shut down

windows64位平台的hadoop2 5 0版本以上插件包 hadoop dll winutils exe 下载地址:http://download.csdn.net/download/lwf2510/8676209

时间: 2025-01-18 09:02:45

在Windows下MyEclipse运行JAVA程序连接HBASE读取数据出错的相关文章

【Java】windows下直接运行Java程序(利用bat运行jar文件)

这种方法只是掩耳盗铃,简化了运行jar的方式.并不是将Java代码打包成了exe文件. 具体步骤为,电脑上有JRE环境,然后利用bat文件包装一下运行jar的控制台语句,最后用C语言打包成exe文件. jar包有两种运行方式,一种为直接双击,直接双击需要配置注册表和环境变量才能运行jar包. 还有一种是在控制台运行,输入javaw -jar xxxx.所有的操作都需要Java环境. bat文件 bat是Windows下可以直接运行的批处理文件,编写也很简单. 新建一个txt文件,输入下面两行脚本

windows下Sublime Text3 java开发环境的配置

windows下Sublime Text3 java开发环境的配置: 1.编写批处理脚本run.bat放在jdk的bin目录下,例如我的就放在"D:\Java\bin". runbat内容: ==========开始(本行不复制)========= @ECHO OFF   cd %~dp1   ECHO Compiling %~nx1.......   IF EXIST %~n1.class (   DEL %~n1.class   )   javac -encoding UTF-8 

Windows下Apache配置SSL以支持https及出错的解决办法

步骤一:安装apache,使其支持SSL,并安装php 1.安装配有SSL模块的apache,apache_2.2.8-win32-x86-openssl-0.9.8g 2.配置apache以支持SSL: 1)打开apache的配置文件conf/httpd.conf LoadModule ssl_module modules/mod_ssl.so Include conf/extra/httpd-ssl.conf 去掉两行前面的# 2)注意修改httpd-ssl.conf 文件里的两个字段: S

从hbase读取数据优化策略和实验对比结果

起因:工作需要,我需要每5分钟从hbase中,导出一部分数据,然后导入到ES中,但是在开始阶段编写的python脚本,我发现从hbase读取数据的速度较慢,耗费大量的时间,影响整个导数过程,恐怕无法在5分钟内完成导数工作 在咨询了老人后,采取部门优化策略,并记录了实验结果. hbase结果大致如下 粉丝表 rowKey  是粉丝ID 列名 含义 id 粉丝ID ut 更新时间 ...  ...     此hadoop集群有13台机器 任务的目标把hbase中前5分钟录入的数据录入到ES中. 1.

windows下揪出java程序占用cpu很高的线程 并找到问题代码 死循环线程代码

我的一个java程序偶尔会出现cpu占用很高的情况 一直不知道什么原因 今天终于抽时间解决了 系统是win2003 jvisualvm 和 jconsole貌似都只能看到总共占用的cpu 看不到每个线程分别占用的cpu呢 所以在windows平台上要找出到底是哪个线程占用的cpu还不那么容易,linux用top就简单多了 最后的解决方法: 1.找到java进程对应的pid. 找pid的方法是:打开任务管理器,然后点击 "查看" 菜单,然后点击 "选择列",把pid勾

windows下揪出java程序占用cpu很高的线程

1.找到java进程对应的pid.通过任务管理器.linux---top 2.然后把java进程导出快照.直接运行命令.stack -l 31372 > c:/31372.stack 3.在windows下只能查看进程的cpu占用率,要查看线程的cpu占用率要借助其他的工具,我这里用的是微软提供的 Process Explorer v15.3 右键点击需要查看的进程---properties linux下先输入top,然后再按shift+h 或"H",此时打开的是线程视图,pid

windows下python-nmap运行过程中出现的问题及解决办法

1)问题描述 在windows下会抛出以下异常. Traceback (most recent call last): File "ftplogin_file.py", line 111, in <module> main() File "ftplogin_file.py", line 109, in main ftpLogin(filepath) File "ftplogin_file.py", line 77, in ftpLog

android工程下不能运行java main程序的解决办法

我在 android环境下写了一个测试Java类,带有main方法,可是无法运行,如下提示: Invalid layout of java.lang.String at value## A fatal error has been detected by the Java Runtime Environment:##  Internal Error (javaClasses.cpp:136), pid=88924, tid=89728#  fatal error: Invalid layout

nodejs windows下安装运行

node 官网下载地址http://nodejs.org/  下载自己对应的版本  ,我下的是windows版本 node-v4.1.1-x64.msi 然后 下一步 下一步 就完成安装了,非常简单,没有遇到任何问题. 安装是否完成 ? 开始->运行 输入 cmd 1 命令行内 输入node -v 显示node 的版本号就对了 我的结果是: v4.1.1 2输入命令node -e "console.log('hello ')"; 下一行显示了 hello node -e  相当于