eclipse - 安装 Hadoop 的 Eclipse 插件

标签 eclipse plugins hadoop

我对 Hadoop 的 Eclipse 插件做了一场噩梦。首先,最新的 Hadoop 版本(1.1.1)甚至不包括 Eclipse 插件 jar 文件。 1.0.4版本有插件,但是没用。 Hadoop 的早期版本(例如 0.22.0)具有该插件并且可以正常工作,但是这些 Hadoop 版本很旧,我想使用最新版本。那么,Hadoop 的 Eclipse 插件有什么用呢?为什么最新版本没有插件,或者即使有,插件也不起作用?这个插件大家都有这么多问题吗?我应该放弃这个插件吗?

谢谢, 香农

最佳答案

昨天艰难的安装了hadoop-1.0.4的eclipse插件,测试成功。

插件不工作的原因是jar包丢失了一些库:

  • commons-cli-1.2.jar
  • commons-configuration-1.6.jar
  • jackson-core-asl-1.8.8.jar
  • jackson-mapper-asl-1.8.8.jar
  • commons-httpclient-3.0.1.jar
  • commons-lang-2.4.jar

你可以将这个 jars 从 ${hadoop}/lib 复制到 ${jar}/lib,并且不要忘记修改 MANIFEST>.

为方便起见,我将一些代码添加到${eclipse-plugin-src}/build.xml目标jar

<copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar"  todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/commons-configuration-${commons-configuration.version}.jar"  todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/commons-httpclient-${commons-httpclient.version}.jar"  todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/commons-lang-${commons-lang.version}.jar"  todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/jackson-core-asl-${jackson.version}.jar"  todir="${build.dir}/lib" verbose="true"/>
<copy file="${hadoop.root}/lib/jackson-mapper-asl-${jackson.version}.jar"  todir="${build.dir}/lib" verbose="true"/>

并在${eclipse-plugin-src}/META-INF

中修改了MANIFEST.MF
undle-ClassPath: classes/,
 lib/hadoop-core.jar,
 lib/commons-cli-1.2.jar,
 lib/commons-configuration-1.6.jar,
 lib/jackson-core-asl-1.8.8.jar,
 lib/commons-httpclient-3.0.1.jar,
 lib/jackson-mapper-asl-1.8.8.jar,
 lib/commons-lang-2.4.jar

重建 eclipse-plugin,玩得开心!

关于eclipse - 安装 Hadoop 的 Eclipse 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13782042/

相关文章:

java - Eclipse - EJB 项目 - 提取包含接口(interface)的 Jar

eclipse - 如何使用Eclipse设置JBoss-EAP并进行调试;使用 "minimal"服务器配置

hadoop - HIVE varchar 中的解析错误

hadoop - 保留更改后如何重新分配数据 block

Hadoop pig 拉丁风格指南?

eclipse - 将 Samsung Smart TV SDK 与 Eclipse Juno(或更新版本)集成

java - 如何将现有的 Java 项目转换为 Maven 项目?

java - Spring 依赖注入(inject)和插件 Jar

c++ - 如何在 Maya API C++ 中创建多边形

plugins - Gradle项目版本与插件的Gradle版本