首页 > 解决方案 > 由于找不到或加载主类错误,Flink 集群未启动

问题描述

我正在尝试设置flink和运行一个集群,尽管我得到以下输出,看起来集群已启动:

$ ./bin/start-cluster.sh
Starting cluster.
Starting standalonesession daemon on host LAPTOP-HRAHBL24.
Starting taskexecutor daemon on host LAPTOP-HRAHBL24.

当我转到 localhost:8081 时,连接被拒绝,所以我检查了 flink 日志并在 taskexecutor 日志中看到以下错误:

Error: Could not find or load main class org.apache.flink.runtime.taskexecutor.TaskManagerRunner

在独立日志中我得到这个:

Error: Could not find or load main class org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint

我一直在互联网上搜索,找不到任何东西。我的 javaenv和系统变量是正确的,因为我可以看到 java -version 和javac-version 的输出。我正在使用java 8,具体来说 jdk1.8.0_251Flink 1.10.1我用and尝试了上述方法1.5.0,都给了我同样的错误。关于如何解决这个问题的任何想法?

标签: javaapache-flink

解决方案


我遇到了同样的问题,但现在我能够启动集群并看到 localhost:8081 UI。

在 Windows 10 操作系统上运行集群 - 用于 Scala 2.11 的 Apache Flink 1.11.2

这是我采取的步骤:

  1. Windows 的激活WSL :https ://www.thewindowsclub.com/how-to-run-sh-or-shell-script-file-in-windows-10 (第 1 部分使用 WSL 执行 Shell 脚本文件
  2. 让 Ubuntu for win 10 运行 Linux 命令(运行.sh文件),这可以通过进入Microsoft Store并下载 Linux 的首选发行版来实现。(或在 Windows 中打开 PowerShell,键入 bash 以获取简单信息)
  3. 在 Ubuntu 上 安装 OpenJDK ,如下: https ://askubuntu.com/questions/746413/trying-to-install-java-8-unable-to-locate-package-openjdk-8-jre (首先打开 Linux shell,然后按照说明进行操作)

完成这些步骤后,您应该能够在Apache Flink 1.11.2文件夹中打开 Linux Shell 并运行./bin/start-cluster.sh没有任何问题。


推荐阅读