在命令提示符下启动zookeeper服务器时出现以下错误:系统找不到指定的路径。我使用的是windows8操作系统,kafka2.12和java8jdk。
我已经检查了以下内容:
套 JAVA_HOME
至 JDK
bin文件夹。
设置 PATH
正确使用环境变量 JAVA_HOME
作为相关路径。
设置 CLASSPATH
正确使用环境变量 JAVA_HOME
作为相关路径。
在windows中使用了缩短路径以避免使用空格:ex:c:\progra~1而不是c:\program files
在命令提示符中选中以下命令: echo %JAVA_HOME%
echo %PATH% echo %CLASSPATH%
where java java -version
java -d64 -version javac -version
他们都给了我指定的路径。但这并没有解决我的问题。
3条答案
按热度按时间t2a7ltrp1#
有一个kafka-run-class.bat文件,它在大多数kafka脚本中都会被引用。它根据下面提到的java\u home变量设置java参数:set java=“%java\u home%/bin/java”
我们需要修改它,因为java\u home已经包含到'bin'的路径。所以现在Kafka试图在路径中附加一个额外的bin目录。我们需要如下所述更改:set java=“%java\u home%/java”
现在在一个新的命令提示符下再次启动zookeeper,错误消失了,zookeeper启动正常。
2w2cym1i2#
我认为javau home应该保留到jdk path而不是jdk\bin。
lpwwtiir3#
我也面临着同样的问题:我的java home set
然后我做了以下改变:
1) 将jdk位置更改为c:\java\jdk1.8.0\u 144\bin,因为以前的位置包含程序和文件之间的空格。
2) 我还需要将kafka-run-class.bat文件从
)至
) . 因为myjavahome已经包含/bin后缀,所以要么从java home中删除bin后缀,要么修改kafka run类。
但是当从命令提示符运行时,我还是遇到了同样的错误。然后我关闭cmd,再次打开新的命令提示符,运行下面的命令,它成功地运行了。
note:if you 修改系统变量,然后需要重新启动系统。