web-dev-qa-db-ja.com

開始時に入力行が長すぎますkafka

WindowsでKafkaメッセージキューを実行しようとしています。

私はこのチュートリアルを使用しています- https://dzone.com/articles/running-Apache-kafka-on-windows-os

コマンドで実行しようとすると-。\ bin\windows\kafka-server-start.bat。\ config\server.properties

エラーが表示されます:入力行が長すぎます。コマンドの構文が正しくありません。

kafkaの場所-C:\ kafka_2.11-1.0.0

19
Geha

これは、フォルダー名「kafka_2.11-1.0.0」のためにパスが長いためです。フォルダの名前を「kafka」などの小さな名前に変更します。

31
Prashant_M

問題

kafka-run-class.batファイルは、CLASSPATHを非常に長くする一連のCLASSPATH:concat呼び出しを実行します。

環境によっては、長すぎる:Windowsのcmd.exe環境には8191文字の制限があります。

ソリューション

kafka-run-class.batを編集して...

  1. cLASSPATHが他の場所で使用または設定されないようにする
  2. パスを短くして、concatが8191文字未満の文字列を生成するようにします
  3. libs/*経由で)concatが単一のjarではなくフォルダ全体を使用するようにする

次に、2番目のアプローチを使用するkafka-run-class.batsource )の編集例を示します。

交換...

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\*;"
3
Midiman

Windowsコマンドラインには、長いコマンドの実行に関する問題があります。代わりにPowershellを使用してください。

2
Lukas Maruniak

すべてのファイルをD:やE:などの他のドライブに入れて、コマンドを実行します

1
YESHWANTH LN

ドライブのルートの近くにkafkaを配置して、ドライブへのパスが非常に短くなるようにします。

Windowsディレクトリに含まれるこれらのKafkaバッチファイルを実行すると、それらは環境変数(クラスパス1)に干渉し、実際にコマンド/ jarを実行する非常に長い入力行を作成できます。

また、他の人が指摘したように、バイナリをダウンロードしたことを確認してください(Kafkaサイトでは、Scalaバイナリと呼ばれ、Windowsについての言及はありませんがソースコードではなく、どこでも混乱する可能性があります。また、一般ユーザーに混乱を招きますが、ソースディストリビューションは圧縮解除するとバイナリディストリビューションに似ています。たとえば、すべてのバッチファイルが含まれていますが、実行されません。

0
John Fantastico

上記の両方のオプションは私には機能しませんでした。

解凍したディレクトリをC:/ドライブに移動して、Power ShellをAdministratorモードで起動し、目的のコマンドを試したところ、動物園係とブローカーがスムーズに起動しました。

0
drt

kafkaフォルダーの名前をkafka2のような短い名前に変更します。新しいコマンドプロンプトを開きます(既存/開いているコマンドプロンプトは使用しないでください)。

0
user1416932

すべてをC:/ tools/kafkaにコピーしましたが、正常に動作します。問題は確かにカフカへの道が長すぎることでした。

0
Adam Bodrogi