hadoop-1.0.4-eclipse-plunge.jar 编译。千辛万苦,终于是出来了。下面的我的有些还是有点小区别,但是大体还是一样的
2014-04-13 21:41
671 查看
编译hadoop1.0.4中eclipse-plugin的jar包
胖叔提醒~转发请注明文章出处:http://www.cnblogs.com/njuduyu/articles/2991657.html今天准备做hadoop的第一个课程作业,首先是要配一下eclipse,按照网上以及教材上的方法,首先要安装eclipse,然后在里面安装插件。
eclipse的安装就不必累赘,我下载的是这一个:eclipse-SDK-4.2.2-linux-gtk.tar.gz,解压就行了。
教材中说,在hadoop安装包contrib/目录下有一个插件hadoop-*-eclipse-plugin.jar,后面还有一些后续的操作。可是,在hadoop1.0.4的版本中,根本没有这个jar,所以我们要想办法自己编译咯。
这当中,参考了网上一些同学的做法,虽然中间遇到一些小问题,但最终还是编译出来一个jar包,我按照自己的步骤来是没问题的,最后放在eclipse中跑也没出差子,可是是我怕过会就忘了中间遇到的小坑,所以先记下来:
虽然我在hadoop安装包contrib/目录下没有找到jar包,但是呢,我在/home/hadoop/hadoop_installs/hadoop-1.0.4/src/contrib/下找到了eclipse-plugin这个文件夹,我们下面要做的就是将这里面的东西编译成jar包。
在这里我们有两种方式:1)ant方式;2)在eclipse里面做。我会在最后,分别给出这两种做法的原始链接。在本文中,我采用第一种,除了介绍安装过程之外,还会介绍我所遇到的问题。
一共分为四步(注意,与文章最后参考链接里面的略有不同)
第一步:编辑home/hadoop/hadoop_installs/hadoop-1.0.4/src/contrib/下的build-contrib.xml文件:
注:上面蓝色的路径,是看官电脑上hadoop的安装目录。
我们要在这个文件里面添加version和eclipse.home两个属性,在后面我们会用到这两个变量:
关于eclipse.home,我想大家一定会记得改成自己的值吧。
这里要记得,在命令行中用sudo哦,不然有可能会该不成。
第二步:编辑home/hadoop/hadoop_installs/hadoop-1.0.4/src/contrib/eclipse-plugin/下的build.xml文件:
这个文件要改动几个地方:
1)添加hadoop-jars path,并同时加入到classpath中:
2)设置includeantruntime=on,防止compile时报warning:
3) 添加将要打包到plugin中的第三方包列表:
为了方便大家修改,把这段话复制过来:
<copy file="${hadoop.root}/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="${hadoop.root}/lib/commons-cli-1.2.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/lib/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/lib/commons-configuration-1.6.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/>
这三个地方改完了,那么就进行我们的第三步。
第三步:修改MANIFEST.MF文件。
注:这步在之前参考的网页里面没有,但事实证明,为了避免不必要的麻烦,最好按我说的改一下。
文件路径是:/home/hadoop/hadoop_installs/hadoop-1.0.4/src/contrib/eclipse-plugin/META-INF/MANIFEST.MF
主要是修改Bundle-ClassPath
Bundle-ClassPath: classes/,lib/hadoop-core.jar,lib/jackson-core-asl-1.8.8.jar ,lib/jackson-mapper-asl-1.8.8.jar, lib/commons-configuration-1.6.jar,lib/commons-lang-2.4.jar, lib/commons-httpclient-3.0.1.jar
修改好了之后,进行第四步。
第四步:执行ant命令:
注意:要吧目录切换到home/hadoop/hadoop_installs/hadoop-1.0.4/src/contrib/eclipse-plugin/下执行ant命令。
直接输入ant,结果提示我没有安装这个指令,这个时候,直接安装就行了:
$ sudo apt-get install ant1.7 |
怎么改呢?
$ sudo update-alternatives --install /usr/bin/java /usr/java/jdk1.6.0_43/bin/java 300 $ sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk1.6.0_43/bin/javac 300 $ sudo update-alternatives --config java $ sudo update-alternatives --config javac |
这个时候Jdk又改回来了,好爽。
接着,就是看看ant错在哪里了。错误提示说error while writing org.apache.hadoop.eclipse.Activator: could not create parent
directories.
靠,原来是没办法建目录。加个sudo,解决。
此时,在hadoop安装目录下的contrib/eclipse-plugin中,就可以看到这个jar包啦!
至此,jar包编译完毕。下面列出参考的几个链接:
[1]http://chqz1987.blog.163.com/blog/static/51438311201301511853170/
[2]/article/2777162.html
[3]/article/5813317.html
相关文章推荐
- eclipse启动优化,终于不那么卡了! 网上找了好多都是myEclipse的优化的,跟eclipse有点区别,找了很多方法还是不能让这个eclipse(Version: Kepler Release
- 编译hadoop1.0.4中eclipse-plugin的jar包
- hadoop的eclipse插件的编译成jar包
- eclipse项目编译版本是1.6,但是引用的jar包的编译版本是1.7
- Linux下成功编译hadoop-eclipse-plugin-${version}.jar
- 【Apache Hadoop系列】hadoop1.0.4 eclipse插件编译
- 将eclipse下编译的class文件打包成hadoop集群可以运行的jar包的过程
- c#与python 交互(调用第三方库失败,自己奋战了三天以失败而结尾,但是还是有些干货)-如果有人弄出来请告诉我
- Windows下Cygwin环境的Hadoop安装- 在Eclipse中重新编译hadoop的jar包
- 编译宏控过滤和宏替换工具,还是放出来吧,也许对一些人有点用。
- 导入的eclipse 中 maven项目,项目中已经加入lombok.jar包,但是不能编译成功
- win7搭建hadoop开发环境之编译hadoop-eclipse-xxx.jar插件
- Windows 编译 hadoop eclipse plugin 1.0.4
- hadoop-1.0.4 eclipse-plugin插件编译
- Linux下Ant编译Hadoop-eclipse-plugin-2.x.x.jar插件
- hadoop-1.0.4编译eclipse plugin插件
- Ubuntu12.04上编译hadoop-eclipse-plugin-1.0.4.jar包
- hadoop1.0.4 eclipse插件编译
- 【hadoop】 eclipse中的“run on hadoop”和打包成jar提交任务的区别
- Windows 编译 hadoop eclipse plugin 1.0.4