我正在尝试在windows上运行kafka消息队列。
我在这个教程里-https://dzone.com/articles/running-apache-kafka-on-windows-os
当我尝试用comand-.\bin\windows\kafka-server-start.bat.\config\server.properties运行它时
我得到一个错误:输入行太长了。命令的语法不正确。
Kafka位置-c:\kafka\u 2.11-1.0.0
我正在尝试在windows上运行kafka消息队列。
我在这个教程里-https://dzone.com/articles/running-apache-kafka-on-windows-os
当我尝试用comand-.\bin\windows\kafka-server-start.bat.\config\server.properties运行它时
我得到一个错误:输入行太长了。命令的语法不正确。
Kafka位置-c:\kafka\u 2.11-1.0.0
16条答案
按热度按时间h7wcgrx31#
把Kafka路径移到更小的根路径就解决了这个问题。例如“c:\kafka”
m0rkklqb2#
将kafka文件夹重命名为较短的名称,如kafka2。打开新的命令提示符(不要使用现有的/打开的命令提示符)
83qze16e3#
这是因为文件夹名“kafkaèu 2.11-1.0.0”的路径很长。只需将文件夹重命名为较小的名称,如“kafka”。
os8fio9y4#
问题
这个
kafka-run-class.bat
文件执行一系列类路径:concat调用,这些调用使类路径非常长。根据您的环境,过长:windows cmd.exe环境限制为8191个字符。
解决
编辑
kafka-run-class.bat
以便。。。使其不在其他地方使用或设置类路径
使路径更短,以便concat生成小于8191个字符的字符串
使concat使用整个文件夹而不是每个jar(通过
libs/*
)例子
下面是一个编辑到
kafka-run-class.bat
(来源)使用第二种方法:替换。。。
... 通过这个。。。
yquaqz185#
windows命令行存在命令执行时间过长的问题。改用powershell。
sf6xfgos6#
我也有这个问题。调试bat文件,您可以看到,在调用返回此错误的命令并使用相对路径调用它之前,更改到目录不会影响结果!问题是classpath变量。对我来说,最简单的方法就是使用以下命令:
这样我就可以换成这个虚拟驱动器了
cd /d K:
并毫无问题地执行脚本:我编写了一个 Package 器脚本,在再次执行之前删除classpath变量,因为每次执行时都会附加这些值(相同的cmd.exe)。
vi4fp9gy7#
把Kafka放在你的驱动器的根附近,使它的路径非常短。
当您运行那些包含在windows目录中的kafka批处理文件时,它们会与您的环境变量(classpath)混在一起,并且可以创建一个很长的输入行来实际运行命令/jar。
正如其他一些人所指出的,确保你下载的是二进制文件(是的,尽管在kafka网站上它被称为scala二进制文件,而且没有提到windows的任何地方,这会让人困惑),而不是源代码。同样让外行用户感到困惑的是,源代码发行版在解压缩时看起来类似于二进制发行版,例如它拥有所有批处理文件,但它们不会运行。
rpppsulh8#
以上两种选择对我都不起作用。
我刚刚将一个解压缩的目录移动到c:/drive,并以管理员模式启动powershell,并尝试了所需的命令,zookeeper和broker顺利启动。
9lowa7mx9#
将所有文件放入其他驱动器,如d:或e:并运行命令
vsmadaxz10#
我把所有的东西都复制到了c:/tools/kafka上,效果很好。问题确实是通往Kafka的路太长了。
3zwtqj6y11#
我试着提取下载的Kafka压缩文件联系人
从命令提示符(不要以管理员的身份运行命令提示符)执行。
以管理员身份运行命令提示符对我造成了问题。
km0tfn4u12#
删除
kafka_2.13-2.5.0
如果有,保持文件夹名称尽可能简单,如Kafka
,还要确保路径中没有空格。一个工作示例:文件夹位于
C:\kafka
.一个不起作用的例子:文件夹位于
C:\kafka 2\
.pieyvz9o13#
对于windows,只需将kafka文件夹路径设为短,例如-d/dev/kafka/bin/windows
xcitsw8814#
关闭zookeeper和kafka cmd窗口,然后重新打开它对我来说很有用。我尝试了以上所有选项,除了powershell。
mkshixfv15#
启动Kafka时输入行太长
我试着按下面的命令,但给了我同样的错误
c:\kafka>\bin\windows\zookeeper-server-start.bat.\config\zookeeper.properties
这是因为当我们在同一个cmd上连续执行同一个命令时,path在classpath中得到append。
关闭命令提示符并再次打开,然后启动zookeeper服务器。