文章出處

  博主最近學習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即可。

 

 

最終效果如下圖示:

 

參考:

  1.JDK1.6安裝與環境變量設置詳細圖解

  2.ant安裝、環境變量配置及驗證

  3.Build hadoop-eclipse-plugin-1.2.1.jar

本文到此結束,謝謝。


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()