hadoop1.2 eclipse插件编译
2016-06-04 13:21
267 查看
目录说明
在编译之前,我们需要先下载后hadoop 1.2.1的源码文件,并解压到合适的位置。目录结构如下:Eclipse: D:\eclipseHadoop: D:\hadoop-1.2.1
Step1导入 Hadoop-eclipse 插件工程
1. 下载hadoop-1.2.1.tar.gz,并解压缩到 D盘根目录下
2. 在 Eclipse 中选择 File—>Import—>General/Existing Projectsinto Workspace 导入Hadoop的Eclipse插件项目。选择路径为D:\hadoop-1.2.1\src\contrib\eclipse-plugin,然后点击Finish.其默认的项目名称是 MapReduceTools。(最好将该文件提取出来导入)
Step2导入所需 jar 包
在项目 MapReduceTools 中新建 lib 目录,将 hadoop-1.2.1 下的 hadoop-core-1.2.1.jar(重命名为 hadoop-core.jar),及其 lib 目录下的 commons-cli-1.2.jar、commons-lang-2.4.jar、commons-configuration-1.6.jar、jackson-mapper-asl-1.8.8.jar、jackson-core-asl-1.8.8.jar、commons-httpclient-3.0.1.jar拷贝到该目录。
Step3修改build-contrib.xml
将D:\hadoop-1.2.1\src\contrib目录下的build-contrib.xml文件拷贝到项目目录中,注意:build-contrib.xml文件拷贝到当前项目的一级目录中,拷贝完成以后修改build-contrib.xml文件。修改的内容如下。
<!-- 修改 hadoop 存放目录 -->
<property name="hadoop.root"location="D:/hadoop-1.2.1"/>
<!-- 添加 eclipse 存放目录 -->
<property name="eclipse.home"location="D:/eclipse" />
<!-- 添加 hadoop 版本 -->
<property name="version"value="1.2.1"/>
Step4修改build.xml
<?xmlversion="1.0" encoding="UTF-8"standalone="no"?> <!-- Licensed to the Apache Software Foundation(ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional informationregarding copyright ownership. The ASF licenses this file to You under theApache License, Version 2.0 (the "License"); you may not usethis file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreedto in writing, software distributed under the License is distributedon an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANYKIND, either express or implied. See the License for the specific languagegoverning permissions and limitations under the License.--> <projectdefault="jar" name="eclipse-plugin"> <!-- 1.修改 build-contrib.xml的位置,去掉"../" --> <importfile="build-contrib.xml"/> <!-- 2.添加如下,否则提示"软件包 org.apache.hadoop.fs 不存在" --> <path id="hadoop-jars"> <fileset dir="${hadoop.root}/"> <includename="hadoop-*.jar"/> </fileset> </path> <path id="eclipse-sdk-jars"> <filesetdir="${eclipse.home}/plugins/"> <includename="org.eclipse.ui*.jar"/> <includename="org.eclipse.jdt*.jar"/> <includename="org.eclipse.core*.jar"/> <includename="org.eclipse.equinox*.jar"/> <includename="org.eclipse.debug*.jar"/> <includename="org.eclipse.osgi*.jar"/> <includename="org.eclipse.swt*.jar"/> <include name="org.eclipse.jface*.jar"/> <includename="org.eclipse.team.cvs.ssh2*.jar"/> <includename="com.jcraft.jsch*.jar"/> </fileset> </path> <!-- Override classpath to include EclipseSDK jars --> <path id="classpath"> <pathelement location="${build.classes}"/> <pathelementlocation="${hadoop.root}/build/classes"/> <pathrefid="eclipse-sdk-jars"/> <pathrefid="hadoop-jars"/> <!--这行为添加的内容--> </path> <!-- Skip building if eclipse.home isunset. --> <target name="check-contrib" unless="eclipse.home"> <property name="skip.contrib"value="yes"/> <echo message="eclipse.home unset:skipping eclipse plugin"/> </target> <target name="compile"depends="init, ivy-retrieve-common"unless="skip.contrib"> <echo message="contrib:${name}"/> <javac encoding="${build.encoding}" srcdir="${src.dir}" includes="**/*.java" destdir="${build.classes}" debug="${javac.debug}" deprecation="${javac.deprecation}"> <classpath refid="classpath"/> </javac> </target> <!-- Override jar target to specifymanifest --> <target name="jar"depends="compile" unless="skip.contrib"> <mkdirdir="${build.dir}/lib"/> <!--这行为添加的内容--> <copyfile="${hadoop.root}/hadoop-core-${version}.jar"tofile="${build.dir}/lib/hadoop-core-${version}.jar"verbose="true"/> <!--这行为添加的内容--> <!-- <copyfile="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib"verbose="true"/> --> <copyfile="${hadoop.root}/lib/commons-cli-1.2.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/commons-lang-2.4.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/commons-configuration-1.6.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/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> </project>
Step5修改MANIFEST.MF
在Bundle-ClassPath添加下面的内容。 Bundle-ClassPath: classes/, lib/hadoop-core.jar, lib/commons-cli-1.2.jar, lib/commons-httpclient-3.0.1.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
Step6Ant 编译1.右键 MapReduceTools 工程,Properties—>Builders—>New—>Ant Builder
2. 修改New_Builder编辑界面中的内容
Name (见名知意): plugin_Builder
Buildfile (build.xml的位置):D:\hadoop-1.2.1\src\contrib\eclipse-plugin\build.xml
3. 修改完成保存
4. 点击Project—>Build Project进行生成
点击Project—>Build Project开始进行生成,这时候我们会看到控制台输出一堆相关的编译信息,编译成功会看到在控制台输出 BUILD SUCCESSFUL 。编译结果在d:\hadoop-1.2.1\build\contrib\eclipse-plugin 目录下。
Step6查看编译成果
编译结果在 d:\hadoop-1.2.1\build\contrib\eclipse-plugin 目录下。我们可以看到在目录下生成了hadoop-eclipse-plugin-1.2.1.jar,这时如果我们需要安装插件到eclipse的话就需要将hadoop-eclipse-plugin-1.2.1.jar 放入 到eclipse的plugins 目录下,重启 eclipse即可。
在编译之前,我们需要先下载后hadoop 1.2.1的源码文件,并解压到合适的位置。目录结构如下:Eclipse: D:\eclipseHadoop: D:\hadoop-1.2.1
Step1导入 Hadoop-eclipse 插件工程
1. 下载hadoop-1.2.1.tar.gz,并解压缩到 D盘根目录下
2. 在 Eclipse 中选择 File—>Import—>General/Existing Projectsinto Workspace 导入Hadoop的Eclipse插件项目。选择路径为D:\hadoop-1.2.1\src\contrib\eclipse-plugin,然后点击Finish.其默认的项目名称是 MapReduceTools。(最好将该文件提取出来导入)
Step2导入所需 jar 包
在项目 MapReduceTools 中新建 lib 目录,将 hadoop-1.2.1 下的 hadoop-core-1.2.1.jar(重命名为 hadoop-core.jar),及其 lib 目录下的 commons-cli-1.2.jar、commons-lang-2.4.jar、commons-configuration-1.6.jar、jackson-mapper-asl-1.8.8.jar、jackson-core-asl-1.8.8.jar、commons-httpclient-3.0.1.jar拷贝到该目录。
Step3修改build-contrib.xml
将D:\hadoop-1.2.1\src\contrib目录下的build-contrib.xml文件拷贝到项目目录中,注意:build-contrib.xml文件拷贝到当前项目的一级目录中,拷贝完成以后修改build-contrib.xml文件。修改的内容如下。
<!-- 修改 hadoop 存放目录 -->
<property name="hadoop.root"location="D:/hadoop-1.2.1"/>
<!-- 添加 eclipse 存放目录 -->
<property name="eclipse.home"location="D:/eclipse" />
<!-- 添加 hadoop 版本 -->
<property name="version"value="1.2.1"/>
Step4修改build.xml
<?xmlversion="1.0" encoding="UTF-8"standalone="no"?> <!-- Licensed to the Apache Software Foundation(ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional informationregarding copyright ownership. The ASF licenses this file to You under theApache License, Version 2.0 (the "License"); you may not usethis file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreedto in writing, software distributed under the License is distributedon an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANYKIND, either express or implied. See the License for the specific languagegoverning permissions and limitations under the License.--> <projectdefault="jar" name="eclipse-plugin"> <!-- 1.修改 build-contrib.xml的位置,去掉"../" --> <importfile="build-contrib.xml"/> <!-- 2.添加如下,否则提示"软件包 org.apache.hadoop.fs 不存在" --> <path id="hadoop-jars"> <fileset dir="${hadoop.root}/"> <includename="hadoop-*.jar"/> </fileset> </path> <path id="eclipse-sdk-jars"> <filesetdir="${eclipse.home}/plugins/"> <includename="org.eclipse.ui*.jar"/> <includename="org.eclipse.jdt*.jar"/> <includename="org.eclipse.core*.jar"/> <includename="org.eclipse.equinox*.jar"/> <includename="org.eclipse.debug*.jar"/> <includename="org.eclipse.osgi*.jar"/> <includename="org.eclipse.swt*.jar"/> <include name="org.eclipse.jface*.jar"/> <includename="org.eclipse.team.cvs.ssh2*.jar"/> <includename="com.jcraft.jsch*.jar"/> </fileset> </path> <!-- Override classpath to include EclipseSDK jars --> <path id="classpath"> <pathelement location="${build.classes}"/> <pathelementlocation="${hadoop.root}/build/classes"/> <pathrefid="eclipse-sdk-jars"/> <pathrefid="hadoop-jars"/> <!--这行为添加的内容--> </path> <!-- Skip building if eclipse.home isunset. --> <target name="check-contrib" unless="eclipse.home"> <property name="skip.contrib"value="yes"/> <echo message="eclipse.home unset:skipping eclipse plugin"/> </target> <target name="compile"depends="init, ivy-retrieve-common"unless="skip.contrib"> <echo message="contrib:${name}"/> <javac encoding="${build.encoding}" srcdir="${src.dir}" includes="**/*.java" destdir="${build.classes}" debug="${javac.debug}" deprecation="${javac.deprecation}"> <classpath refid="classpath"/> </javac> </target> <!-- Override jar target to specifymanifest --> <target name="jar"depends="compile" unless="skip.contrib"> <mkdirdir="${build.dir}/lib"/> <!--这行为添加的内容--> <copyfile="${hadoop.root}/hadoop-core-${version}.jar"tofile="${build.dir}/lib/hadoop-core-${version}.jar"verbose="true"/> <!--这行为添加的内容--> <!-- <copyfile="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib"verbose="true"/> --> <copyfile="${hadoop.root}/lib/commons-cli-1.2.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/commons-lang-2.4.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/commons-configuration-1.6.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/jackson-mapper-asl-1.8.8.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar"todir="${build.dir}/lib" verbose="true"/> <copyfile="${hadoop.root}/lib/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> </project>
Step5修改MANIFEST.MF
在Bundle-ClassPath添加下面的内容。 Bundle-ClassPath: classes/, lib/hadoop-core.jar, lib/commons-cli-1.2.jar, lib/commons-httpclient-3.0.1.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
Step6Ant 编译1.右键 MapReduceTools 工程,Properties—>Builders—>New—>Ant Builder
2. 修改New_Builder编辑界面中的内容
Name (见名知意): plugin_Builder
Buildfile (build.xml的位置):D:\hadoop-1.2.1\src\contrib\eclipse-plugin\build.xml
3. 修改完成保存
4. 点击Project—>Build Project进行生成
点击Project—>Build Project开始进行生成,这时候我们会看到控制台输出一堆相关的编译信息,编译成功会看到在控制台输出 BUILD SUCCESSFUL 。编译结果在d:\hadoop-1.2.1\build\contrib\eclipse-plugin 目录下。
Step6查看编译成果
编译结果在 d:\hadoop-1.2.1\build\contrib\eclipse-plugin 目录下。我们可以看到在目录下生成了hadoop-eclipse-plugin-1.2.1.jar,这时如果我们需要安装插件到eclipse的话就需要将hadoop-eclipse-plugin-1.2.1.jar 放入 到eclipse的plugins 目录下,重启 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常见错误以及处理方法详解
- Eclipse引入jquery报错如何解决
- 让Flex Builder 3.0与Eclipse3.4整合起来
- Eclipse配置Javascript开发环境图文教程
- 使用zend studio for eclipse不能激活代码提示功能的解决办法
- 图解Eclipse j2ee开发环境的搭建过程
- 两种Eclipse部署动态web项目方法
- ext for eclipse插件安装方法
- 解决Fedora14下eclipse进行android开发,ibus提示没有输入窗口的方法详解
- eclipse导入jquery包后报错的解决方法
- Eclipse 格式化代码时不换行与自动换行的实现方法
- Eclipse下jQuery文件报错出现错误提示红叉
- eclipse如何忽略js文件报错(附图)