hadoop-1.2.1 eclipse插件:build.sysclasspath = last

时间:2014-03-27 14:26:47

标签: hadoop eclipse-plugin javac

我是hadoop的新手,我遇到了eclipse插件的问题。 一切都安装和配置非常好(hadoop + java) 但是当我导入eclipse插件时,我遇到了一个问题:

当我尝试运行ant命令时,我收到一个错误列表:

 [ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::
 [ivy:configure] :: loading settings :: file = /usr/local/hadoop/ivy/ivysettings.xml
 ivy-resolve-common:
 ivy-retrieve-common:
 [ivy:cachepath] DEPRECATED: 'ivy.conf.file' is deprecated, use  'ivy.settings.file'       instead
 [ivy:cachepath] :: loading settings :: file = /usr/local/hadoop/ivy/ivysettings.xml
 compile:
 [echo] contrib: eclipse-plugin
 [javac] /usr/local/hadoop/src/contrib/eclipse-plugin/build.xml:72: warning:   'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds

 BUILD FAILED
 /usr/local/hadoop/src/contrib/eclipse-plugin/build.xml:72: Class not found: javac1.8

 Total time: 8 seconds

系统:

Windows 7 + Oracle VM Virtualbox v4.3.8 + Ubuntu 11.10 + hadoop-1.2.1 + eclipse

当我开始hadoop时

 $ jps


 9550 DataNode
 9877 TaskTracker
 9638 SecondaryNameNode
 9471 NameNode
 9798 JobTracker
 9913 Jps

积contrib.xml

 <property name="hadoop.root" location="${root}/../../../"/>  

 <property name="version" value="1.2.1"/> <!-- This is Hadoop Version -->
 <property name="eclipse.home" value="D://Programa//eclipse"/> <!-- This is eclipse folder path -->

MANIFEST.MF

  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-asl1.8.8.jar,
   lib/jackson-mapper-asl1.8.8.jar
  Bundle-Vendor: Apache Hadoop

的build.xml

  <?xml version="1.0" encoding="UTF-8" standalone="no"?>

  <!--
  Licensed to the Apache Software Foundation (ASF) under one or more

  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> 
    </path>

    <!-- Modificado por Marcus -->
     <path id="hadoop-lib-jars">
   <fileset dir="${hadoop.root}">
     <include name="hadoop*.jar" />
  </fileset>
   </path>
  <!-- Fim da Modificação por Marcus -->

  <!-- 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"/>
   <!-- Modificado por Marcus -->
   <path refid="hadoop-lib-jars" />   
   <!-- Fim da Modificação por Marcus -->
 </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"/>
        <!-- Modificado por Marcus -->
            <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/commons-lang-2.4.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/jackson-mapper-asl-1.8.8.jar" todir="${build.dir}/lib" verbose="true"/>
        <!-- Fim da Modificação por Marcus -->
      <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>

我真的希望有人可以帮助我,我经常搜索,但我找不到任何东西

0 个答案:

没有答案