参考博客:https://blog.csdn.net/qq_43048011/article/details/85625959
Flink项目启动报以下错误
Exception in thread "main" org.apache.flink.runtime.client.JobExecutionException: Job execution failed.
at org.apache.flink.runtime.jobmaster.JobResult.toJobExecutionResult(JobResult.java:146)
at org.apache.flink.runtime.minicluster.MiniCluster.executeJobBlocking(MiniCluster.java:638)
at org.apache.flink.streaming.api.environment.LocalStreamEnvironment.execute(LocalStreamEnvironment.java:123)
at org.apache.flink.streaming.api.scala.StreamExecutionEnvironment.execute(StreamExecutionEnvironment.scala:654)
at com.xiahua007.SocketWindowWordCount$.main(SocketWindowWordCount.scala:48)
at com.xiahua007.SocketWindowWordCount.main(SocketWindowWordCount.scala)
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.apache.flink.streaming.api.functions.source.SocketTextStreamFunction.run(SocketTextStreamFunction.java:96)
原因分析:代码中使用了socket作为DataSource,如果socket监听的端口没有nc -lk 9999,就会报错
// get input data by connecting to the socket val text: DataStream[String] = env.socketTextStream(hostname, port, '\n')
解决方案:在机器上启动nc -lk 9999
我的是mac,直接打开终端输入以上命令就OK了、