错误:无法找到或加载主类org.apache.ignite.startup.cmdline

时间:2017-11-22 13:26:45

标签: java apache jmx ignite

在谷歌云实例上安装apache点火时,我收到了这个错误。 我搜索了这个错误,希望有人会遇到这个错误。 但没有人遇到过这个问题。帮我解决它。

[root@api-manager1 apache-ignite-2.3.0-src]# bin/ignite.sh Error: Could not find or load main class org.apache.ignite.startup.cmdline.CommandLineRandomNumberGenerator Error: Could not find or load main class org.apache.ignite.internal.util.portscanner.GridJmxPortFinder bin/ignite.sh, WARN: Failed to resolve JMX host (JMX will be disabled): api-manager1 Error: Could not find or load main class org.apache.ignite.startup.cmdline.CommandLineStartup

4 个答案:

答案 0 :(得分:8)

您下载了源代码,而不是二进制文件,这就是您没有所需库的原因。您需要改为使用apache-ignite-2.3.0-bin

答案 1 :(得分:1)

这个问题可能有点老了,但是我正在发布我的答案,以帮助刚开始使用apache ignite的任何人。 在apache ignite网站上,有很多开始使用apache ignite(src,bin,docker ...)的可能性,其中一种是使用src文件。在这种情况下,您需要完全遵循此处提到的内容 https://apacheignite.readme.io/docs/getting-started#building-from-source

从apache ignite网站:

  

二进制下载是为了方便我们的用户而提供的,而不是Apache Ignite的官方发行版

N.B:src文件夹包含DEVNOTES.txt,其中提供了生成二进制文件所需遵循的步骤的详细信息。

答案 2 :(得分:0)

当您的IGNITE_HOME指向错误的目录时,可能会发生此错误。

为了给您一些背景知识,我已经开始通过下载二进制版本来使用ignite,Ignite可以很好地开始使用,直到我决定设置ignite Web控制台为止。作为设置ignite Web控制台的一部分,我下载了ignoite的源代码版本,并配置了IGNITE_HOME变量以指向ignite的源代码目录。从此时开始,它开始引发此错误

  

IGNITE_HOME与该错误有何关系?

只看一下ignite.sh文件,脚本如下

if [ "${IGNITE_HOME}" = "" ];
    then IGNITE_HOME_TMP="$(dirname "$(cd "$(dirname "$0")"; "pwd")")";
    else IGNITE_HOME_TMP=${IGNITE_HOME};
fi

SCRIPTS_HOME="${IGNITE_HOME_TMP}/bin"
...

以上脚本将基于IGNITE_HOME确定SCRIPTS_HOME的绝对路径。作为ignite启动的一部分,它必须针对这些路径加载CommandLineStartup类,并且如果IGNITE_HOME指向错误的目录,最终将找不到该类。

答案 3 :(得分:-1)

您正在尝试以src下载而不是bin下载方式启动服务器。我也遇到了类似的问题,请按照以下步骤操作

转到二进制发行版:https://ignite.apache.org/download.cgi  并向下滚动,如屏幕截图所示:

enter image description here

下载二进制发行版,然后在安装文件夹中执行命令:ignite.bat /examples/config/example-ignite.xml

服务器将如下启动:

enter image description here