您的位置:首页 > 编程语言 > Java开发

Windows下使用Ant编译hadoop-eclipse-plugin-2.x插件

2016-11-14 12:33 741 查看
下载Ant,apache-ant-1.9.7-bin.zip,需要下载以前的版本可点击

1.1 解压文件到一个目录,配置相应的环境变量

ANT_HOME=E:\Program Files (x86)\apache-ant-1.9.7

PATH=原路径;%ANT_HOME%\bin;

1.2 验证是否安装成功ant -version



下载Hadoop,这里选择2.6.4版本,即搭建伪分布式环境的版本

由于编译hadoop的eclipse插件需要hadoop相应的jar包,需要有hadoop的安装文件。将hadoop-2.6.4.tar.gz文件解压至本地目录下,也可以是自己编译过后的hadoop文件(hadoop版本是在32位下打包,可编译成64位版本的)。

注:hadoop文件存放目录不要带有空格,不然编译不成功;在Windows系统下开发hadoop程序,hadoop文件安装目录也不能带有空格。

下载Eclipse,解压缩到本地目录下

注:在用Ant编译hadoop-eclipse-plugin-2.x时需要Eclipse的安装目录,Eclipse文件安装目录也不能带有空格。

编译好hadoop-eclipse-plugin-2.x.jar插件后,可以重新将Eclipse安装目录拷贝到自己想要的目录下。

下载hadoop2x-eclipse-plugin-master.zip,将文件解压缩到本地目录下

通过命令行cmd进入到..\hadoop2x-eclipse-plugin-master\src\contrib\eclipse-plugin目录下,或者直接在这个目录下按住Shift+鼠标右键,选择在此处打开命令窗口



执行命令

ant jar -Dversion=2.6.4 -Declipse.home=E:\ProgramFiles\eclipse -Dhadoop.home=F:\data\hadoop-2.6.4


或者

ant jar -Dhadoop.version=2.6.4 -Declipse.home=E:\ProgramFiles\eclipse -Dhadoop.home=F:\data\hadoop-2.6.4


-Dversion,-Dhadoop.version都表示的是hadoop的版本

-Declipse.home表示的是eclipse的安装目录,就是需要使用的eclipse的目录

-Dhadoop.home表示的是hadoop的目录   

执行命令会发现一直停在ivy-resolve-common处一直不动



​ 出现这个问题的原因是执行上面的命令的时候,会查找相应的jar包,若没有的会一直停在那里,但实际上编译hadoop-eclipse-plugin并不需要common相关的包。

解决:修改执行命令行目录(即..\hadoop2x-eclipse-plugin-master\src\contrib\eclipse-plugin)下的build.xml文件,找到:
<target name="compile" depends="init, ivy-retrieve-common" unless="skip.contrib">
对应的行,



去掉depends=”init, ivy-retrieve-common” 修改为
<target name="compile" unless="skip.contrib">


在cmd命令行中Ctrl+C,输入Y终止批处理操作



再次执行ant jar命令,提示copy不到相关jar包的错误



这个问题的原因是..\hadoop2x-eclipse-plugin-master\ivy目录下的libraries.properties文件中的jar包的版本找不到,因为对应的是在hadoop2.6.4版本下编译,该阶段是将hadoop主目录下的jar包复制到插件当中,因此需要修改jar的版本。

  解决:修改..\hadoop2x-eclipse-plugin-master\ivy\libraries.properties文件,将报错的jar包版本号更换成与hadoop安装目录\share\hadoop\common\lib下的jar对应的版本号。



hadoop2.6.4版本只修改了hadoop.version以及commons-collections.version就成功了,如果执行仍然提示copy不到相关jar包的错误,可以根据提示修改对应版本号。

执行命令,此时编译成功



生成的插件在..\hadoop2x-eclipse-plugin-master\build\contrib\eclipse-plugin目录下,如图BUILD SUCCESSFUL上一句也可以看到插件包生成的目录。

此时hadoop-eclipse-plugin-2.6.4.jar编译成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: