mac OS X Yosemite 上编译hadoop 2.6.0/2.7.0及TEZ 0.5.2/0.7.0 注意事项
1、jdk 1.7问题
hadoop 2.7.0必须要求jdk 1.7.0,而oracle官网已经声明,jdk 1.7 以后不准备再提供更新了,所以趁现在还能下载,赶紧去down一个mac版吧
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
应该选择mac ox 64位的版本
http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-macosx-x64.dmg
注:Yosemite上,只能安装jdk 1.7.0_79 这个版本,比它低的jdk 1.7版本已经没法正常安装了。
2、yum -install 问题
mac 虽然也是linux内核,但是很多其它linux版本下有用的东西,却被apple阉割掉了,比如apt-get,yum这些都没有,解决办法有二个:
a) 使用Mac Ports代替,官网地址:http://www.macports.org/
还有一篇网友的入门文章:http://www.ccvita.com/434.html
b) 使用HomeBrew,官网地址:http://brew.sh/
使用教程见: http://blog.csdn.net/delphiwcdj/article/details/19679891
3、maven 仓库的国内镜象问题
maven仓库的官网站点实在是太慢了,怪不得李总理强烈要求要提网速、降网费,不然实在严重阻碍中国IT事业的发展啊!!!
好在oschina做了件功德无量的好事,在国内搭建了一个镜像,把maven的settings.xml改成下面这样:
1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 4 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 5 xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> 6 7 8 <mirrors> 9 <mirror> 10 <id>nexus</id> 11 <mirrorOf>*</mirrorOf> 12 <url>http://maven.oschina.net/content/groups/public/</url> 13 </mirror> 14 </mirrors> 15 16 </settings>
4、hadoop 2.6.0 编译过程中,找不到jdk 7下的classes.jar、tools.jar问题
hadoop 2.7的编译,在mac下还算顺利,基本上按 64位centos 下编译 hadoop 2.6.0 源码 的套路来就行了,一次成功。
但是hadoop 2.6就有点二了,编译过程中会报一个错,大意是找到不jdk 7目录下的classes.jar文件,原因是这个文件现在已经更名成rt.jar,放在jre/lib下了。
所以解决办法是:
进入 cd $JAVA_HOME (默认是/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/ 这个目录)
sudo mkdir Classes 手动创建这个目录
cd Classes
sudo cp ../jre/lib/rt.jar classes.jar 手动把rt.jar复制到这个目录下,并改名为classes.jar
sudo cp ../lib/*.jar 为防止其它jar包也找不到,把lib下所有jar包全放进来
再编译hadoop 2.6.0 就ok了
5、tez 0.7.0 编译过程中 nodejs 无法下载的问题
TEZ 0.5.2可以一路顺畅的编译,但是0.7.0就没这么好运了,会联到nodejs官网下载很多东西,所以编译ted 0.7.0这个版本,要选网速快的时段,比如月黑风高的夜晚,大家都在梦乡,不跟你抢带宽的时候编译。淘宝君提供了一个国内镜像 http://npm.taobao.org/ ,大家可以修改hosts,把官网地址直接指镜像地址。
具体可参考回复中3楼低调小门徒的做法:
vim /etc/hosts
42.120.63.172 registry.npmjs.org npmjs.org nodejs.org
附:tez0.7.0的下载地址 http://apache.dataguru.cn/tez/0.7.0/
编译命令:mvn clean package -DskipTests=true -Dmaven.javadoc.skip=true
官方编译指南:http://tez.apache.org/install.html
最后给几篇关于TEZ的介绍文章:
http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.1.2/bk_installing_manually_book/content/rpm-chap-tez.html
http://dongxicheng.org/mapreduce-nextgen/apache-tez-optimizations/
http://hortonworks.com/hadoop/tez/
http://hortonworks.com/hadoop-tutorial/supercharging-interactive-queries-hive-tez/

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Win7下安装Hadoop
1、本人电脑是Win7 64位系统的: 2、JDK 版本: 3、Cygwin 版本: 官网自行下载 4、Hadoop 版本: 官网自行下载,下载稳定版的吧 下面就开始安装啦~~~~ 一、 安装JDK,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会找不到JDK。我安装的路径为C:\Java\jdk1.7.0_21,安装完配置环境变量: 1. 安装完成后开始配置环境变量,右击我的电脑,点击属性 2. 在出现的对话框中选择高级系统设置,在出现的对话框中选择环境变量 3. 新建名为”JAVA_HOME“的变量名,变量值为之前安装jdk的目录,例如本人的为” C:\Java\jdk1.7.0_21 “ 4. 在已有的系统变量”path“的变量值加上”%JAVA_HOME%\bin;(注意,每个变量值是以”;“隔开,变量值开头的分号就起这个作用)自此配置完成。 二、 安装Cygwin,下载地址:http://www.cygwin.com/,根据操作系统的需要下载32位或64的安装文件。 1 . 双击下载好的安装文件,点击下一步...
- 下一篇
hadoop: hive 1.2.0 在mac机上的安装与配置
环境:mac OS X Yosemite + hadoop 2.6.0 + hive 1.2.0 +jdk 1.7.0_79 前提:hadoop必须先安装,且处于运行状态(伪分式模式或全分布模式均可) hive官网地址:http://hive.apache.org/ 建议:经个人实践,在mac OS X Yosemite 环境下,如果使用apache下载的原始hadoop 2.6.0,不管jdk安装成什么版本(1.6\1.7\1.8都试过),hive 1.2.0启动时,始终报jdk版本不匹配,后来在mac上将hadoop 2.6.0源编译成mac原生版本后,就正常了。 如果有朋友也遇到类似情况,请参考 mac OS X Yosemite 上编译hadoop 2.6.0/2.7.0及TEZ 0.5.2/0.7.0 注意事项 一、环境变量 ... export HADOOP_HOME=/home/hadoop/hadoop-2.6.0 export HIVE_HOME=/home/hadoop/hive-1.2.0 ... export HADOOP_CONF_DIR=${HADOOP_H...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Mario游戏-低调大师作品
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题