Flink Word Count Example 缺少一个库

Flink Word Count Example is missing a library

我正在尝试 运行 使用 Flink 的示例程序。我使用

下载了示例项目

mvn archetype:generate -DarchetypeGroupId=org.apache.flink -DarchetypeArtifactId=flink-quickstart-scala -DarchetypeVersion=0.8.1

然后我 运行 在终端上执行以下命令

mvn package && java -cp target/test-1.0-SNAPSHOT.jar adfin.WordCount

我收到以下错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/flink/api/common/typeinfo/TypeInformation at adfin.WordCount.main(WordCount.scala) Caused by: java.lang.ClassNotFoundException: org.apache.flink.api.common.typeinfo.TypeInformation at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

我尝试将库从默认的 0.8.1 更新到 1.0.0,但这并没有改变任何东西。我想我可能需要添加一个额外的罐子。有人可以帮忙吗?

示例项目的 Maven 配置在 provided 范围内使用 flink 依赖项。使用 mvn package 命令编译的 jar 文件是为了提交到 flink 集群而构建的,而不是 运行 在单机模式下,因此它不包含 flink jar(因此 NoClassDefFoundError例外)。将 flink 库包含到您的类路径中,您的命令将 运行 正常。