如何编译hadoop1.x的eclipse插件

68次阅读
没有评论

共计 7063 个字符,预计需要花费 18 分钟才能阅读完成。

丸趣 TV 小编给大家分享一下如何编译 hadoop1.x 的 eclipse 插件,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

注意:以下操作基于 Hadoop-1.2.1,Eclipse Luna,Win7 64 位

1、将 hadoop eclipse 插件的工程导入 Eclipse。插件源码目录如下:

D:\Lab\lib\hadoop\hadoop-1.2.1\src\contrib\eclipse-plugin

2、配置工程依赖

3、准备 ant 的配置文件

D:\Lab\lib\hadoop\hadoop-1.2.1\src\contrib\build-contrib.xml

将以上 build-contrib.xml 拷贝到项目目录中,并修改文件内容。具体如下:

  property name= name  value= ${ant.project.name} / 
  property name= root  value= ${basedir} / 
  property name= hadoop.root  location= D:/Lab/lib/hadoop/hadoop-1.2.1 / 
  property name= eclipse.home  location= D:/Program Files/Eclipse/eclipse-jee-luna-R-win32-x86_64 / 
  property name= version  value= 1.2.1 / 
  property name= build.contrib.dir  location= ${root}/build/contrib / 
  property name= build.dir  location= ${root}/build/contrib/${name} /

4、修改 build.xml

!-- 1. 修改  build-contrib.xml 的位置,去掉 ../  -- 
 import file= build-contrib.xml  / 
 !-- 2. 添加如下,否则提示 软件包  org.apache.hadoop.fs  不存在  -- 
 path id= hadoop-jars 
  fileset dir= ${hadoop.root}/ 
  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 refid= hadoop-jars  / !-- 本行为添加内容 -- 
 /path 
 !-- 3. 修改并添加 jar 包, 有些包已经有了, 只添没有的  -- 
 !-- Override jar target to specify manifest -- 
 target name= jar  depends= compile  unless= skip.contrib 
  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-lang-2.4.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-mapper-asl-1.8.8.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  / 
  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

5、修改 MENIFEST.MF,在 Bundule-ClassPath 中增加一些依赖的 jar。

Bundle-ClassPath: classes/,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/hadoop-core-1.2.1.jar,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/commons-cli-1.2.jar,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/commons-configuration-1.6.jar,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/commons-httpclient-3.0.1.jar,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/commons-lang-2.4.jar,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/jackson-core-asl-1.8.8.jar,
 D:/Lab/lib/hadoop/hadoop-1.2.1/lib/jackson-mapper-asl-1.8.8.jar

5、增加 Ant Builder。

6、编译

在 Project 菜单中 Build Project

7、运行结果

Buildfile: D:\Lab\ws-back-end\MapReduceTools\build.xml
check-contrib:
init:
 [echo] contrib: eclipse-plugin
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\classes
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\test
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\system
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\system\classes
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\examples
 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\test\logs
init-contrib:
ivy-download:
 [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar
 [get] To: D:\Lab\lib\hadoop\hadoop-1.2.1\ivy\ivy-2.1.0.jar
 [get] http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar moved to http://120.195.54.5:801/videoplayer/ivy-2.1.0.jar?ich_u_r_i=ae068fe40ff82e58486dd0954048cc19 ich_s_t_a_r_t=0 ich_e_n_d=0 ich_k_e_y=1445088923750763152452 ich_t_y_p_e=1 ich_d_i_s_k_i_d=6 ich_u_n_i_t=1
 [get] Not modified - so not downloaded
ivy-probe-antlib:
ivy-init-antlib:
ivy-init:
[ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::
[ivy:configure] :: loading settings :: file = D:\Lab\lib\hadoop\hadoop-1.2.1\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 = D:\Lab\lib\hadoop\hadoop-1.2.1\ivy\ivysettings.xml
compile:
 [echo] contrib: eclipse-plugin
 [javac] D:\Lab\ws-back-end\MapReduceTools\build.xml:65: warning:  includeantruntime  was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
 [javac] Compiling 45 source files to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\classes
 [javac]  注:  某些输入文件使用或覆盖了已过时的  API。 [javac]  注:  有关详细信息,  请使用  -Xlint:deprecation  重新编译。 [javac]  注:  某些输入文件使用了未经检查或不安全的操作。 [javac]  注:  有关详细信息,  请使用  -Xlint:unchecked  重新编译。 [mkdir] Created dir: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\hadoop-core-1.2.1.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\hadoop-core.jar
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\lib\commons-cli-1.2.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\commons-cli-1.2.jar
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\lib\commons-lang-2.4.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\commons-lang-2.4.jar
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\lib\commons-configuration-1.6.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\commons-configuration-1.6.jar
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\lib\commons-httpclient-3.0.1.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\commons-httpclient-3.0.1.jar
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\lib\jackson-mapper-asl-1.8.8.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\jackson-mapper-asl-1.8.8.jar
 [copy] Copying 1 file to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib
 [copy] Copying D:\Lab\lib\hadoop\hadoop-1.2.1\lib\jackson-core-asl-1.8.8.jar to D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\lib\jackson-core-asl-1.8.8.jar
 [jar] Building jar: D:\Lab\ws-back-end\MapReduceTools\build\contrib\eclipse-plugin\hadoop-eclipse-plugin-1.2.1.jar
BUILD SUCCESSFUL
Total time: 6 seconds

看完了这篇文章,相信你对“如何编译 hadoop1.x 的 eclipse 插件”有了一定的了解,如果想了解更多相关知识,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-17发表,共计7063字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)