一、简介
Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)
本文基于windows环境下来安装和配置eclipse,以创建flink版的WordCount为例,介绍eclipse+maven来开发大数据相关应用,关于eclipse本身的使用不做介绍。
二、下载
下载地址:https://www.eclipse.org/downloads/
下载得到:eclipse-java-2020-06-R-win32-x86_64.zip
三、安装
不需要安装,直接解压缩后就可以使用,解压缩后双击eclipse.exe即可
四、配置
1.安装maven
在进行下一步之前,需要安装好maven,maven的安装其实就是解压缩
2.配置maven环境变量
windows环境下的安装方法与linux基本一致:就是找个解压缩软件,将其解压缩到某一个目录即可,然后在环境变量中添加MAVEN_HOME,以及在PATH中添加%MAVEN_HOME%\bin即可
文件管理器在“此电脑”图标上右击鼠标=>属性
增加MAVEN_HOME及MAVEN_OPTS
2.配置maven国内仓库(maven编译时需要下载n多文件,国内仓库会大大加快下载速度)
找到maven安装目录下的conf子目录,其下有一个settings.xml文件,打开编辑之
找到
3.在eclipse里配置maven安装目录
点击菜单windows=>performance
选择左边的Maven=>installations,然后点击右边的add...按钮
选择maven的安装路径,安装名自动会显示,保留该名则可
选择刚添加的maven的安装路径,然后Apply and Close
4.在eclipse里配置maven参数文件位置
点击菜单windows=>performance
选择左边的Maven=>User Settings,然后点击右边的Browse...按钮,在打开的对话框中选中maven安装目录下conf子目录下的settings.xml文件,然后选择Update Settings,再选择Apply and Close
五、创建项目(project)
点击菜单File=>New
选择Maven下的Maven Project,然后Next
选Next
这一步很关键俄(我在这里卡了N久),选择Configure...
选Add Remote Catalog...
Catalog File:https://mirrors.huaweicloud.com/repository/maven/
注,测试发现阿里的maven仓库地址不行
Desciption: huawei(随意)
点击Verify...可以验证一下地址
最后OK
选择本地和huawei,选择Apply and Close
在Catalog中选择All Catalogs
在Filter中 输入flink
然后选择GoupID为org.apache.flink的其中一个Artifact,Next
输入Groupid,Artifact id,然后Finish
之后eclipse会下载依赖的文件,同时报一堆错,这是由于flink的版本号问题造成的
打开pom.xml,修改版本号后保存
flink:1.11.1
scala: 2.11
配置Run Configuration...
配置Run Configuration...
设置Name
点击WorkSpace
在Goals中输入:clearn compile package
选择: Skip Tests
最后Run
开始编译和打包
在文件管理器中会发现jar文件
运行之:
flink run -m master:8081 -c Group1.FlinkTest.BatchJob FlinkTest-0.0.1-SNAPSHOT.jar
结果出现错误:rg.apache.flink.client.program.ProgramInvocationException: The main method caused an error: No data sinks have been created yet. A program needs at least one sink that consumes data. Examples are writing the data set or printing it.
从flink.apache.org下载flink-1.11.1-src.tgz,(下载地址:https://www.apache.org/dyn/closer.lua/flink/flink-1.11.1/flink-1.11.1-src.tgz)
也可以从https://github.com/中搜flink,然后点击apache/flink下载源码
将flink-1.11.1-src.tgz解压缩后,
找到子目录\flink-1.11.1-src\flink-1.11.1\flink-examples\flink-examples-batch\src\main\java\org\apache\flink\examples\java\wordcount
将其下的WordCount.java文件及util文件夹复制到FlinkTest工程的以下子目录下
FlinkTest\src\main\java\Group1\FlinkTest
然后到eclipse,在FlinkTest右击鼠标,选择refresh
刷新后,文件就出来了
把WordCountData.java中的package全改为 package Group1.FlinkTest.util;
把WordCount.java中的
package改为Group1.FlinkTest
import org.apache.flink.examples.java.wordcount.util.WordCountData;
改为
import Group1.FlinkTest.util.WordCountData;
选中项目FlinkTest,点击菜单Run=>Run As=>Maven build
编译,打包成功
运行之:
flink run -m master:8081 -c Group1.FlinkTest.WordCount FlinkTest-0.0.1-SNAPSHOT.jar --input $FLINK_HOME/LICENSE --output /home/hadoop/wordcount-result001.txt
也可以到hdfs里面试试身手
hadoop fs -put $FLINK_HOME/LICENSE /mylab/mydata
hadoop fs -ls /mylab/mydata
flink run -m master:8081 -c Group1.FlinkTest.WordCount FlinkTest-0.0.1-SNAPSHOT.jar --input hdfs:///mylab/mydata/LICENSE --output hdfs:///mylab/mydata/wordcount-result001.txt
至此,全部搞定!
七、排错
有时候出现问题的话,也有网上说,在pom.xml,找到
然后再选择菜单Run=>maven build