Maven+Eclipse+Hadoop第一个WordCount

之前一直都是在windows下的Eclipse写hadoop,这次打算在Ubuntu下写一次,采用Maven来创建和管理工程。

Maven是一种挺方便的工程管理插件吧,通过写依赖项属性便可以自动加入需要的各个依赖库文件,也让Hadoop程序能够直接在Console这里运行,不需要导出jar包到命令行中去,方便调试代码啦!

首先记录一下Maven工程的创建

Eclipse本身是内嵌了Maven,如果想使用命令行方式创建工程,强力推荐

http://www.cnblogs.com/yjmyzz/p/3495762.html写得非常详细用心哦。

我记录一下用Eclipse直接创建的过程。

首先是Eclipse的Maven插件,如下图所示,在Windows->Preferences->maven->Installations里边。

Eclipse里边已经有一个Embedded的版本,当然也可以自己添加自己想要的maven版本,选择右边的Add添加即可。


接着便是新建一个Maven项目


catolog我选择的是默认的quickstart



  • 关于groupId,可以看做是个包吧,左右图对照便可以看到在src/main/java和src/test/java里边都出现了yjj包。
  • 关于artifactId,可以看做是工程名,也会在yjj包里边生成一个同名的包。
  • 版本号默认即可,packaging则定义了打包后的jar名,这里应该会生成一个jar.jar包吧,尴尬,没命名好啊。


最后生成的项目结构如上图左图所示。

Maven项目有如下通用约定,

  • src/main/java用于存放源代码
  • src/test/java用于存放单元测试代码
  • target则用于存放编译生成的class以及打包后生成的输出文件

看上图似乎多出了个src目录对吧,不需要去管它的,因为src/main/java和src/test/java其实就是在这个src里边的,我们查看下maven-mahout文件夹就可以很清楚的知道了。


这个工程里边的main是怎样运行的呢?

如果直接右击一个含main函数的类选择run as-> java application会出现找不到这个类的情况。

那该怎么做呢?

右击项目名,然后选择


然后跳出如下界面


在下面选择需要运行的类,这里我选择工程自动生成的APP类。选完之后,以后再想运行这个类,便可以在Run按钮里边选择这个类来运行啦。


控制台成功输出啦!


WordCount程序的编写

首先在pom.xml里边添加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>yjj</groupId>
  <artifactId>maven-mahout</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>maven-mahout</name>
  <url>http://maven.apache.org</url>
	
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  	<mahout.version>0.9</mahout.version> 
  </properties>

    
  <dependencies>  
    <dependency>  
      <groupId>junit</groupId>  
      <artifactId>junit</artifactId>  
      <version>3.8.1</version>  
      <scope>test</scope>  
    </dependency>  
     <dependency>
       <groupId>org.apache.hadoop</groupId>
       <artifactId>hadoop-core</artifactId>
       <version>1.2.1</version>
    </dependency>
  </dependencies>  
</project>

添加了hadoop-core,版本选用1.2.1版本。
之后运行maven install命令,需要联网,它会自动下载需要的库。


Consol

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值