2012-12-18 100 views
1

我想导入Hadoop类以在我的项目中使用。什么是在项目中包含Hadoop类的正确方法

import org.apache.hadoop.fs.*; 

我通常会想到去外面的世界,并设法找到一个Hadoop JAR文件包括,把它放在一个libs文件夹在Eclipse中,然后使用类。这样做并没有找到我所期望的,我问:在我自己的Java类中包含Hadoop类的正确方法是什么,以便我可以在eclipse中使用它们?

我发现Hadoop文档令人沮丧,因为它的保质期非常短。六个月前的建议显然是完全没有价值的。

+1

(或什么版本呢,你正在使用的群集?)。您是否在使用Ant/Maven等构建工具? –

+0

这是所有新的工作,所以我使用的是当前版本1.1.1。我们使用蚂蚁,而不是mvn。我终于找到了一个第三方网站,在那里我可以下载一个hadoop-core.jar,它膨胀并且很好地解决了我的问题,但是让我想知道其他人如何使用第一方资源? – shadynasty

+0

您是否使用ivy在Ant中进行依赖关系管理?我想大多数人会使用一些依赖管理启用的构建工具,比如Ant with Ivy,或者maven –

回答

0

使用Maven和M2E插件,一个Hadoop项目是非常简单:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 
    <groupId>csw.hadoop</groupId> 
    <artifactId>hadoop-sandbox</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 

    <dependencies> 
     <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-core</artifactId> 
     <version>1.1.1</version> 
     <scope>provided</scope> 
     </dependency> 
    </dependencies> 
</project> 

和Maven将处理下载你的jar和依赖关系,Eclipse的Maven插件会为您管理的构建路径。

我敢肯定有一个Eclipse的插件常春藤过,您正在使用什么版本的Hadoop,将做同样的事情蚂蚁

+0

这就是我说文档令人沮丧时的意思。你是说2012年12月,m2e是今天获得Hadoop的好方法吗?因为每当评论放在本页底部时它就是一个“巨大的混乱”,导致我避免沿着m2e路径走下去:http://wiki.apache.org/hadoop/EclipseEnvironment – shadynasty

+0

我认为该页面是齿轮对编辑hadoop源代码的人们进行编辑,并回馈给变化人员。绝对m2e是一个很好的方法,我从2009年开始使用它,但是如果你已经在使用Ant,那么请查看Ivy(它使用相同的公共Maven仓库) –

+0

谢谢Chris。我将继续希望获得更清晰的帮助文件,并希望Apache发布hadoop jar文件。 – shadynasty

相关问题