HBase编译过程中碰到的问题

测试环境上hbase采用maven编译,只要安装了maven就行.

在hbase目录下mvn package -Dmaven.test.skip.exec=true编译好的jar放在target

目录下,将jia包替换以后。

1.重启集群发现一个问题:HMaster启动了,但是Regionserver没有起来

 

后来分析maven编译之前时候会把依赖都下到.m2/目录下,Hbase集群在启动的时候会首先从该目录下寻找jar包,而其中的一个hadoop的core jar包与集群的hbase版本冲突,因此编译以后不能启动。

 

解决方法:对maven不了解不知道怎么去修改寻找路劲,所以采取了一个笨方法,编译结束以后删除.m2文件夹。就可以顺利启动集群了。

 

2.eclipse下maven编译hbase

 

还是maven的问题:从svn上下载下来的maven工程,直接编译报错:No goals have been specified for this build
网上查了一下,eclipse在使用maven 插件的时候需要配置defaultgoal

于是在pom.xml的build下添加<defaultgoal>install</defaultgoal>
再编译提示Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.3:run (generate) on project hbase: An Ant BuildException has occured: Execute failed: java.io.IOException: Cannot run program "sh":

找到<exec executable="sh"><arg line="${basedir}/src/saveVersion.sh ${project.version} ${generated.sources}" /></exec>

将其注释掉,而后执行maven build skip test,顺利编译。

copy到环境上发现hbase master起来了,而regionserver没有启动。

hbase-site.xml配置的是0.90.3而编译后的版本是0.90.2以为版本不兼容,故把hbase-site.xml修改,重启报错,启动的时候报错,default.xml 版本高于0.90.2。在代码中把验证版本的代码注释掉,而后重新编译jar,部署到环境上,base-site.xml为0.90.3此时hbase成功启动。

 

另外ms如果不对代码进行修改,直接编译的话target目录下面是不会有jar生成的,很是蛋疼

 

环境配置真是烦人啊~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值