`

在windows下配置hadoop-eclipse插件,并连接虚拟机的hadoop集群

 
阅读更多

在windows下配置hadoop-eclipse插件,并连接虚拟机的hadoop集群

前提:本地环境java+ant

本编译使用eclipse3.6,一开始用的3.7一致报错,网上找了好久。。。。必须3.6

  1. 下载hadoop-1.1.2.tar.gz到本地目录
  2. 使用Git Bash(可模拟部分linux的命令)解压hadoo-1.1.2.tar.gz文件

Git下载路径:https://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git

  1. 进入${hadoop.home}/src/contrib/eclipse-plugin目录写该build.xml文件
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 
<project default="jar" name="eclipse-plugin">
 
  <property name="name" value="${ant.project.name}"/>
 
  <property name="root" value="${basedir}"/>
 
  <property name="hadoop.root" location="d:/hadoop/hadoop-1.1.2"/>
 
  <property name='version' value='1.1.2'/>
 
  <property name='eclipse.home' location='d:/hadoop/eclipse'/>
 
  <property name="build.dir" location="${hadoop.root}/build/contrib/${name}"/>
 
  <property name="build.classes" location="${build.dir}/classes"/>
 
  <property name="src.dir"  location="${root}/src/java"/>
 
  <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>
 
  </path>
 
  <!-- Override classpath to include Eclipse SDK jars -->
 
  <path id="classpath">
 
   <fileset dir="${hadoop.root}">
 
    <include name="*.jar"/>
 
   </fileset>
 
    <path refid="eclipse-sdk-jars"/>
 
  </path>
 
 <target name="compile">
 
  <mkdir dir="${build.dir}/classes"/>
 
       <javac
 
     encoding="ISO-8859-1"
 
     srcdir="${src.dir}"
 
     includes="**/*.java"
 
     destdir="${build.classes}"
 
     debug="on"
 
     includeAntRuntime="false"
 
     deprecation="off">
 
     <classpath refid="classpath"/>
 
    </javac>
 
  </target>
 
  <!-- Override jar target to specify manifest-->
 
  <target name="jar" depends="compile">
 
    <mkdir dir="${build.dir}/lib"/>
 
    <copy file="${hadoop.root}/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar" verbose="true"/>
 
    <copy file="${hadoop.root}/lib/commons-cli-1.2.jar"  todir="${build.dir}/lib" verbose="true"/>
 
    <copy file="${hadoop.root}/lib/commons-configuration-1.6.jar"  todir="${build.dir}/lib" verbose="true"/>
 
    <copy file="${hadoop.root}/lib/commons-httpclient-3.0.1.jar"  todir="${build.dir}/lib" verbose="true"/>
 
    <copy file="${hadoop.root}/lib/jackson-core-asl-1.8.8.jar"  todir="${build.dir}/lib" verbose="true"/>
 
    <copy file="${hadoop.root}/lib/commons-lang-2.4.jar"  todir="${build.dir}/lib" verbose="true"/>
 
    <copy file="${hadoop.root}/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>

 

  1. 编辑META-INF/ MANIFEST.MF

添加如下

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,lib/commons-lang-2.4.jar,lib/jackson-core-asl-1.8.8.jar,lib/jackson-mapper-asl-1.8.8.jar

Bundle-Vendor: Apache Hadoop

 

  1. Cmd命令行工具进入eclipse-plugin目录执行命令ant 编译
  2. 到${hadoop.home}/build/contrib/eclipse-plugin目录可以找到hadoop-eclipse-plugin-1.1.2.jar文件,拷贝到${eclipse.home}/plugins/
  3. 启动eclipse然后其他的配置方式网上都有了。

  注意:请把windows的用户名该为与hadoop集群同名的用户名如grid

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics