2015-09-16 54 views
2

我创建了一个word count项目,并通过maxmind(maven)将maven导入到GeoIP中 - 此Geoip项目为build with maven在hadoop mapReduce项目下设置pom.xml

我导入后,我有一个新的项目(geoIP)旁边的单词计数项目与一个pom.xml(非常长),它是由eclipse创建的。

但在上面的链接他们在说增加的pom.xml

<dependency> 
    <groupId>com.maxmind.geoip2</groupId> 
    <artifactId>geoip2</artifactId> 
    <version>v2.3.0</version> 
</dependency> 

  1. 如果我日食创建的pom.xml我应该删除或添加它,我不明白这一点用上面的代码?

  2. 我需要多少个pom.xml文件?

  3. MapReduce项目是否需要使用maven构建?

回答

3

我没有使用过GeoIP2,但它在这里不应该有所作为。

如果eclipse为我创建了pom.xml我应该删除还是添加上面的代码?

Eclipse中创建过pom.xml文件为您geoip的项目默认。您应该为文件添加新的依赖项以访问GeoIP。

我需要多少个pom.xml文件?

真的取决于您的整体项目结构。你可能应该看看这个SO question的答案,并且看一看项目的多个maven文件的this example

MapReduce项目是否需要用maven构建?

不,但我会推荐它,它会让你的生活更轻松。这里是我的依赖关系的map-reduce作业:

<dependencies> 
    <!-- junit testing framework --> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>3.8.1</version> 
     <scope>test</scope> 
    </dependency> 
    <!-- hadoop hdfs components --> 
    <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-hdfs</artifactId> 
     <version>2.7.1</version> 
    </dependency> 
    <!-- hadoop map-reduce components --> 
    <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-mapreduce-client-core</artifactId> 
     <version>2.7.1</version> 
    </dependency> 
    <!-- hadoop common components --> 
    <dependency> 
     <groupId>org.apache.hadoop</groupId> 
     <artifactId>hadoop-common</artifactId> 
     <version>2.7.1</version> 
    </dependency> 
</dependencies> 

与位于Maven Repository for Hadoop所有附加的依赖性。