博主最近學習Hadoop 1.2.1,從多個搜索引擎的搜索結果當中匯合得出本文Hadoop 1.2.1 Eclipse-plugin安裝過程介紹,如果你是從網上下載hadoop-eclipse-plugin-1.2.1.jar放進eclipse的plugins目錄后發現并未被成功加載時,可以嘗試本文內的編譯安裝方法。
一、軟件環境準備
JDK版本:jdk-6u45-windows-x64.exe
Hadoop版本:hadoop-1.2.1.tar.gz
IDE版本:eclipse-java-luna-SR1a-win32-x86_64.zip
ANT版本:apache-ant-1.9.4-bin.zip
操作系統:Windows 8.1 64bit
二、安裝前期準備
JDK:安裝過程忽略,請自行網上搜索安裝資料。
Hadoop:將hadoop-1.2.1.tar.gz解壓到D:\
eclipse:將eclipse-java-luna-SR1a-win32-x86_64.zip解壓到D:\Program Files\
ANT:將apache-ant-1.9.4-bin.zip解壓到D:\Program Files\
- 配置ANT環境變量 -
目前我是將環境變量配置到用戶環境變量當中,當然你可以根據需要配置為系統環境變量。ant需要配置一個ANT_HOME和在Path中添加%ANT_HOME%\bin
1.ANT_HOME = D:\Program Files\apache-ant-1.9.4
2.Path 末尾添加 ;%ANT_HOME%\bin
3.打開命令行窗口輸入ant按回車,如出現Buildfile等文字代表環境變量已設置正確,ant已可用
ant設置過程如下圖示:
軟件最終目錄情況如下圖示:
三、編譯hadoop-eclipse-plugin-1.2.1
1.用文本編輯器打開D:\hadoop-1.2.1\src\contrib\eclipse-plugin\build.properties設置eclipse.home及version
# Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this 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 agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. output.. = bin/ bin.includes = META-INF/,\ plugin.xml,\ resources/,\ classes/,\ classes/,\ lib/ eclipse.home=D:\\Program Files\\eclipse version=1.2.1
2.修改D:\hadoop-1.2.1\src\contrib\eclipse-plugin\build.xml
<?xml version="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 information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this 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 agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <project default="jar" name="eclipse-plugin"> <import file="../build-contrib.xml"/> <path id="eclipse-sdk-jars"> <fileset dir="${eclipse.home}/plugins/"> <include name="org.eclipse.ui*.jar"/> <include name="org.eclipse.jdt*.jar"/> <include name="org.eclipse.core*.jar"/> <include name="org.eclipse.equinox*.jar"/> <include name="org.eclipse.debug*.jar"/> <include name="org.eclipse.osgi*.jar"/> <include name="org.eclipse.swt*.jar"/> <include name="org.eclipse.jface*.jar"/> <include name="org.eclipse.team.cvs.ssh2*.jar"/> <include name="com.jcraft.jsch*.jar"/> </fileset> <fileset dir="D:/hadoop-1.2.1"> <include name="hadoop*.jar"/> </fileset> </path> <!-- Override classpath to include Eclipse SDK jars --> <path id="classpath"> <pathelement location="${build.classes}"/> <pathelement location="${hadoop.root}/build/classes"/> <path refid="eclipse-sdk-jars"/> </path> <!-- Skip building if eclipse.home is unset. --> <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 specify manifest --> <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="D:/hadoop-1.2.1/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/> <copy file="D:/hadoop-1.2.1/lib/commons-cli-${commons-cli.version}.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="D:/hadoop-1.2.1/lib/commons-configuration-1.6.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="D:/hadoop-1.2.1/lib/commons-httpclient-3.0.1.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="D:/hadoop-1.2.1/lib/commons-lang-2.4.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="D:/hadoop-1.2.1/lib/jackson-core-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/> <copy file="D:/hadoop-1.2.1/lib/jackson-mapper-asl-1.8.8.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>
3.修改D:\hadoop-1.2.1\src\contrib\eclipse-plugin\META-INF\MANIFEST.MF
Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: MapReduce Tools for Eclipse Bundle-SymbolicName: org.apache.hadoop.eclipse;singleton:=true Bundle-Version: 0.18 Bundle-Activator: org.apache.hadoop.eclipse.Activator Bundle-Localization: plugin Require-Bundle: org.eclipse.ui, org.eclipse.core.runtime, org.eclipse.jdt.launching, org.eclipse.debug.core, org.eclipse.jdt, org.eclipse.jdt.core, org.eclipse.core.resources, org.eclipse.ui.ide, org.eclipse.jdt.ui, org.eclipse.debug.ui, org.eclipse.jdt.debug.ui, org.eclipse.core.expressions, org.eclipse.ui.cheatsheets, org.eclipse.ui.console, org.eclipse.ui.navigator, org.eclipse.core.filesystem, org.apache.commons.logging Eclipse-LazyStart: true Bundle-ClassPath: classes/,lib/hadoop-core.jar,lib/commons-cli-1.2.jar ,lib/commons-configuration-1.6.jar,lib/commons-httpclient-3.0.1.jar,l ib/commons-lang-2.4.jar,lib/jackson-core-asl-1.8.8.jar,lib/jackson-ma pper-asl-1.8.8.jar Bundle-Vendor: Apache Hadoop
4.利用ant編譯hadoop-eclipse-plugin-1.2.1.jar
打開cmd.exe,用cd命令定位到D:\hadoop-1.2.1\src\contrib\eclipse-plugin后執行ant回車
>cd /d D:\hadoop-1.2.1\src\contrib\eclipse-plugin >ant >>d:\eclipse-plugin-build.log
完成后打開d:\eclipse-plugin-build.log在文件結尾看到BUILD SUCCESSFUL字樣則代表jar包編譯完成。這里需要注意的是設置build.properties中的eclipse.home為你eclipse的存放目錄位置。
四、安裝hadoop-eclipse-plugin-1.2.1.jar
安裝過程就稍微簡單多了,將本機上D:\hadoop-1.2.1\build\contrib\eclipse-plugin\hadoop-eclipse-plugin-1.2.1.jar拷貝至D:\Program Files\eclipse\plugins\目錄后啟動Eclipse即可。
最終效果如下圖示:
參考:
3.Build hadoop-eclipse-plugin-1.2.1.jar
本文到此結束,謝謝。
文章列表