文章部分选自:https://blog.csdn.net/weixin_42370346/article/details/88688693
纸上得来终觉浅,绝知此事要躬行
IDEA编写的jar项目在虚拟机执行
一、添加依赖
二、编写项目
三、将项目打包成jar
1、右键项目名称——>Open Module Settings,如下:
2、Artifacts——>+——>JAR——>From modules with dependencies…,如下:
3、填写Main Class(点击…选择WordcountMain),再然后下面有两个选项,第一个是
extract to the target JAR,指将项目及项目依赖的包都打包成一个JAR(结果运行比较慢,见附录),第二个是copy to the output directory and link via manifest,指其他依赖包分开放,结果为多个JAR,因为执行环境hadoop上已经有相关的依赖包,这里选第二个,点击ok,如下:
4、勾选include in project build ,其中Output directory为最后的输出目录,下面output layout是输出的各jar包,点击ok,如下:
5、点击菜单Build——>Build Aritifacts…,如下:
6、选择Build,结果可到前面4的output目录查看或者项目结构中的out目录,如下:
7、找到wordcount.jar,并利用lrzsz框架上传到hadoop
四、执行验证
1.新建测试文本testdata,并添加内容,上传至hdfs
2.执行命令,注意命令的形式,只有两个参数,主类已经在代码和打jar包的时候设置了,所以这里命令不用输入,和使用hadoop自带的wordcount不一样,况且代码中args[0]已经设置为输入路径了,args[1]为输出路径,查看结果:
hadoop jar wordcount.jar /user/wc/input/testdata /user/wc/output
第一个为hdfs中的输入目录,第二个为hdfs的输出