编译eclipse hadoop插件
2015-10-03 00:00
567 查看
摘要: 编译eclipse hadoop插件
操作系统:ubuntu
hadoop版本:1.0.1
eclipse版本:eclipse Helios-SR2
直接通过hadoop 1.0.1掩码插件生成的eclipse插件是不能用的,因为少了一些jar包,所以需要手工修改src/contrib/eclipse-plugin目录下的build.xml文件和META-INF/MANIFEST.MF文件。
修改build.xml文件
这是没修改前的
在这个基础上修改,修改后为
2. 修改META-INF/MANIFEST.MF文件
这是没修改前的
在这个基础上修改,修改后为
注意要把build.xml中定义的所有jar包都加上,我就是一开始少写了lib/commons-cli-1.2.jar,导致使用是还是一直报Error:failure to login的错误,折腾了很久(被《hadoop技术内幕》这本书误导了)
3.编译生成插件jar包
命令行进入到hadoop安装目录下的src/contrib/eclipse-plugin目录下,输入以下命令:
其中eclipse.home是用来指定eclipse的路径,version是Hadoop的版本号。
最后会在hadoop安装目录下的build/contrib/eclipse-plugin目录下看到生成的jar包,把它拷贝到eclipse的插件目录下即可。
操作系统:ubuntu
hadoop版本:1.0.1
eclipse版本:eclipse Helios-SR2
直接通过hadoop 1.0.1掩码插件生成的eclipse插件是不能用的,因为少了一些jar包,所以需要手工修改src/contrib/eclipse-plugin目录下的build.xml文件和META-INF/MANIFEST.MF文件。
修改build.xml文件
这是没修改前的
<target name="jar" depends="compile" unless="skip.contrib"> <mkdir dir="${build.dir}/lib"/> <copy file="${hadoop.root}/build/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/> jarfile="${build.dir}/hadoop-${name}-${version}.jar" manifest="${root}/META-INF/MANIFEST.MF"> <fileset dir="${build.dir}" includes="classes/ lib/"/> <fileset dir="${root}" includes="resources/ plugin.xml"/> </jar> </target>
在这个基础上修改,修改后为
<target name="jar" depends="compile" unless="skip.contrib"> <mkdir dir="${build.dir}/lib"/> <copy file="${hadoop.root}/build/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-configuration-1.6.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/jackson-core-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/jackson-mapper-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/> <jar jarfile="${build.dir}/hadoop-${name}-${version}.jar" manifest="${root}/META-INF/MANIFEST.MF"> <fileset dir="${build.dir}" includes="classes/ lib/"/> <fileset dir="${root}" includes="resources/ plugin.xml"/> </jar> </target>
2. 修改META-INF/MANIFEST.MF文件
这是没修改前的
Bundle-ClassPath: classes/,lib/hadoop-core.jar
在这个基础上修改,修改后为
Bundle-ClassPath: classes/,lib/hadoop-core.jar,lib/commons-cli-1.2.jar,lib/commons-configuration-1.6.jar,lib/commons-lang-2.4.jar,lib/jackson-core-asl-1.8.8.jar,lib/jackson-mapper-asl-1.8.8.jar,lib/commons-httpclient-3.0.1.jar
注意要把build.xml中定义的所有jar包都加上,我就是一开始少写了lib/commons-cli-1.2.jar,导致使用是还是一直报Error:failure to login的错误,折腾了很久(被《hadoop技术内幕》这本书误导了)
3.编译生成插件jar包
命令行进入到hadoop安装目录下的src/contrib/eclipse-plugin目录下,输入以下命令:
ant -Declipse.home=/home/jason/eclipse -Dversion=1.0.2-SNAPSHOT
其中eclipse.home是用来指定eclipse的路径,version是Hadoop的版本号。
最后会在hadoop安装目录下的build/contrib/eclipse-plugin目录下看到生成的jar包,把它拷贝到eclipse的插件目录下即可。
相关文章推荐
- 详解HDFS Short Circuit Local Reads
- Hadoop_2.1.0 MapReduce序列图
- 使用Hadoop搭建现代电信企业架构
- MyEclipse Web Project转Eclipse Dynamic Web Project
- Windows Clang开发环境备忘
- 单机版搭建Hadoop环境图文教程详解
- 傻瓜式用Eclipse连接MySQL数据库
- hadoop常见错误以及处理方法详解
- 让Flex Builder 3.0与Eclipse3.4整合起来
- Eclipse配置Javascript开发环境图文教程
- 使用zend studio for eclipse不能激活代码提示功能的解决办法
- 图解Eclipse j2ee开发环境的搭建过程
- ext for eclipse插件安装方法
- 解决Fedora14下eclipse进行android开发,ibus提示没有输入窗口的方法详解
- eclipse导入jquery包后报错的解决方法
- Eclipse 格式化代码时不换行与自动换行的实现方法
- Eclipse下jQuery文件报错出现错误提示红叉
- eclipse如何忽略js文件报错(附图)
- eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
- jquery库或JS文件在eclipse下报错问题解决方法