`

编译hadoop 1.0.3 eclipse plugin jar包

阅读更多

环境:Win 7 32bit

1、修改hadoop-1.0.3\src\contrib\build-contrib.xml,

添加<property name="version" value="1.0.3"/>和<property name="eclipse.home" value="d:\\eclipse"/>

或者ant -Declipse.home=d:\\eclipse -Dversion=1.0.3 jar

 

2、在hadoop-1.0.3目录下运行ant compile -logfile error.log,会出现错误:

compile-hdfs-classes:
    [javac] D:\hadoop\hadoop-1.0.3\build.xml:576: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
    [javac] Compiling 1 source file to D:\hadoop\hadoop-1.0.3\build\classes
    [javac] D:\hadoop\hadoop-1.0.3\build\src\org\apache\hadoop\package-info.java:5: 未结束的字符串字面值
    [javac]                          user="jackdministrator
    [javac]                               ^
    [javac] D:\hadoop\hadoop-1.0.3\build\src\org\apache\hadoop\package-info.java:6: 需要为 class、interface 或 enum
    [javac] ", date="Sat Jul  7 21:00:12     2012", url="",
    [javac] ^
    [javac] D:\hadoop\hadoop-1.0.3\build\src\org\apache\hadoop\package-info.java:6: 需要为 class、interface 或 enum
    [javac] ", date="Sat Jul  7 21:00:12     2012", url="",
    [javac]          ^
    [javac] D:\hadoop\hadoop-1.0.3\build\src\org\apache\hadoop\package-info.java:6: 未结束的字符串字面值
    [javac] ", date="Sat Jul  7 21:00:12     2012", url="",
    [javac]                                              ^
    [javac] 4 错误

 

解决方法:修改D:\hadoop\hadoop-1.0.3\src、saveVersion.sh文件,把user=`whoami`改成user=`hadoop`

 

3、再次运行ant命令

D:\hadoop\hadoop-1.0.3\build.xml:618: Execute failed: java.io.IOException: Cannot run program "autoreconf" (in directory "D:\hadoop\hadoop-1.0.3\src\native"): CreateProcess error=2, ?????????
解决方法:在cygwin中安装autoconf automake libtool

 

在安装完软件后依旧报该错误,所以决定使用真实的linux环境进行编译。

 

环境:CentOS 5.6 x84_64

 

1、修改hadoop-1.0.3\src\contrib\build-contrib.xml,添加<property name="version" value="1.0.3"/>和<property name="eclipse.home" value="/download/eclipse"/>

 

2、在hadoop-1.0.3目录下运行ant compile -logfile error.log,会出现错误:

D:\hadoop\hadoop-1.0.3\build.xml:618: Execute failed: java.io.IOException: Cannot run program "autoreconf" (in directory "D:\hadoop\hadoop-1.0.3\src\native"): CreateProcess error=2, ?????????


解决方法:yum install autoconf automake libtool

 

3、再次编译,顺利通过。切换到hadoop-1.0.3\src\contrib\eclipse-plugin目录,执行ant compile -logfile error.log,顺利通过。

 

如果编译时遇到以下问题:

ivy-download:
      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar
      [get] To: /home/hdpusr/workspace/hadoop-1.0.1/ivy/ivy-2.1.0.jar
      [get] Error getting http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar to /home/hdpusr/workspace/hadoop-1.0.1/ivy/ivy-2.1.0.jar

BUILD FAILED
java.net.ConnectException: Connection timed out

 

可以使用命令 ant compile -Doffline=true

 

4、把hadoop-1.0.3\hadoop-core-1.0.3.jar拷贝到hadoop-1.0.3\build目录下,在hadoop-1.0.3\src\contrib\eclipse-plugin目录中执行ant jar。

 

5、在hadoop-1.0.3\build\contrib\eclipse-plugin目录存放已经编译好的hadoop-eclipse-plugin-1.0.3.jar,详见附件

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics