系统找不到指定的路径:启动zookeeper(Apache Kafka)时出错

时间:2018-12-27 06:00:03

标签: java path apache-kafka apache-zookeeper

在命令提示符下启动Zookeeper服务器时出现以下错误: 该系统找不到指定的路径。 我正在使用Windows 8 OS,Kafka 2.12和Java 8 JDK。

我已经检查了以下内容:

  1. JAVA_HOME设置为JDK bin文件夹。
  2. 使用PATH作为相关路径正确设置JAVA_HOME环境变量。
  3. 使用CLASSPATH作为相关路径正确设置JAVA_HOME环境变量。
  4. 在Windows中使用了缩短的路径,以避免使用空格: 例如:C:\ Progra〜1而不是C:\ Program Files
  5. 在命令提示符下检查以下命令:

    echo %JAVA_HOME%

    echo %PATH%

    echo %CLASSPATH%

    where java

    java -version

    java -d64 -version

    javac -version

所有人都给了我指定的路径。但是它没有解决我的问题。

3 个答案:

答案 0 :(得分:0)

我认为JAVA_HOME应该保留到JDK路径而不是JDK \ bin。

答案 1 :(得分:0)

此文件kafka-run-class.bat在大多数kafka脚本中都被引用。它根据下面提到的JAVA_HOME变量设置JAVA参数: 设置JAVA =“%JAVA_HOME%/ bin / java”

因为JAVA_HOME已经包含直到'bin'的路径,所以我们需要对此进行修改。因此,现在Kafka尝试将额外的bin目录附加到路径中。我们需要如下所述进行更改: 设置JAVA =“%JAVA_HOME%/ java”

现在,在新命令中再次启动Zookeeper时,错误消失了,并且Zookeeper正常启动。

答案 2 :(得分:0)

我也面临着同样的问题: 我的Java主目录是

    C:\Program Files\Java\jdk1.8.0_144\bin

然后我做了以下更改:

1)将jdk位置更改为C:\ Java \ jdk1.8.0_144 \ bin,因为先前的位置包含程序和文件之间的空格。

2)此外,我还需要从以下位置更改kafka-run-class.bat文件

   IF ["%JAVA_HOME%"] EQU [""] (
set JAVA=java
    ) ELSE (
set JAVA="%JAVA_HOME%/bin/java"

    IF ["%JAVA_HOME%"] EQU [""] (
set JAVA=java
    ) ELSE (
set JAVA="%JAVA_HOME%/java"

) 。 由于我的Java主页已经包含/ bin后缀,因此可以从Java主页中删除bin后缀或修改kafka-run-class。

但是从命令提示符运行时我仍然遇到相同的错误。然后我关闭了cmd,再次打开新的命令提示符并运行以下命令,它成功运行。

    .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

注意:如果您修改系统变量,则需要重新启动系统。