启动 kafka 时输入行太长

2022-08-31 15:47:18

我正在尝试在Windows上运行Kafka消息队列。

我是我们在本教程中 - https://dzone.com/articles/running-apache-kafka-on-windows-os

当我尝试用comand运行它时 - .\bin\windows\kafka-server-start.bat .\config\server.properties

我得到一个错误:输入行太长。该命令的语法不正确。

卡夫卡位置 - C:\kafka_2.11-1.0.0


答案 1

这是因为由于文件夹名称“kafka_2.11-1.0.0”,路径的长度很长。只需将文件夹重命名为小名称,例如“kafka”。


答案 2

问题

该文件执行一堆 CLASSPATH :concat 调用,使 CLASSPATH 很长。kafka-run-class.bat

根据您的环境,时间过长:Windows cmd.exe环境限制为 8191 个字符。

解决 方案

编辑以便...kafka-run-class.bat

  1. 使它不在其他地方使用或设置 CLASSPATH
  2. 使路径更短,以便 concat 生成小于 8191 个字符的字符串
  3. 使 concat 使用整个文件夹而不是每个 jar(通过libs/*)

下面是使用第二种方法的编辑()的示例:kafka-run-class.bat

取代。。。

rem Classpath addition for release
for %%i in ("%BASE_DIR%\libs\*") do (
    call :concat "%%i"
)

...通过这个...

rem Classpath addition for release
call :concat "%BASE_DIR%\libs\*;"

推荐