2

Ich habe Windows-Umgebung und meine eigenen Satz von Kafka und Tierpfleger laufen. Um benutzerdefinierte Objekte zu verwenden, habe ich begonnen, Avro zu verwenden. Aber ich musste die Registrierung starten lassen. Confluent Plattform heruntergeladen und lief dies:Start Konfluenten Schema Registrierung in Windows

$ ./bin/schema-registry-start ./etc/schema-registry/schema-registry.properties 
/c/Confluent/confluent-3.0.0-2.11/confluent-3.0.0/bin/schema-registry-run-class: line 103: C:\Program: No such file or directory 

Dann habe ich diese auf der Installations-Seite:

„Confluent derzeit nicht unterstützt Windows-Windows-Benutzer können die Zip und Tar-Archive herunterladen und verwenden, sondern müssen. um die JAR-Dateien direkt auszuführen, anstatt die Wrapper-Skripte im Verzeichnis bin/zu verwenden. "

Ich frage mich, wie gehe ich über konfluente Schema Registrierung in Windows-Umgebung starten?

Blick auf Inhalte von Skripten und es ist schwer zu entziffern.

Dank

Antwort

1

Im Moment Confluent Plattform nicht mit Skripts für Windows mitliefert. Sie können jedoch Ihre eigenen schreiben, wenn Sie mit Java-Anwendungen vertraut sind. Das Skript schema-registry-server-start (und das Skript schema-registry-run-class, von dem es abhängt) erledigt Dinge wie den Modus -daemon, legt die Java-Speicheroptionen fest, richtet die Standardprotokollkonfiguration ein und mehr, aber das Schlüsselstück ist, dass sie Java mit io.confluent.kafka.schemaregistry.rest.SchemaRegistryMain als Hauptmethode ausführen. Sie können auch die kafka-run-class.bat von Kafka als nützliche Basis finden: https://github.com/apache/kafka/blob/trunk/bin/windows/kafka-run-class.bat

1

Das Problem wahrscheinlich das Vorhandensein von Räumen in der JAVA_HOME-Umgebung für Ihr Windows-Umgebung (wie durch die Fehlermeldung kein nachweislich „C: \ Program“ eher als "C: \ Programme ...".

Sie können die EXACT-Syntax des letzten Java-Aufrufs ermitteln, um schema_registry zu starten, indem Sie das letzte "exec" im schema-registry-run-class-Skript durch das Ersetzen ersetzen Wort "echo". Sie werden den ziemlich gewundenen Befehl sehen

/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/bin/java -Xmx512M -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+DisableExplicitGC -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dlog4j.configuration=file:/opt/confluent/bin/../etc/schema-registry/log4j.properties -cp :/opt/confluent/bin/../package-schema-registry/target/kafka-schema-registry-package-*-development/share/java/schema-registry/*:/opt/confluent/bin/../share/java/confluent-common/*:/opt/confluent/bin/../share/java/rest-utils/*:/opt/confluent/bin/../share/java/schema-registry/* io.confluent.kafka.schemaregistry.rest.SchemaRegistryMain 

Das co mmund klettert auf "Java [core-java-opts] [java-defines] -cp [Klassenpfad] io.confluent.kafka.schemaregistry.rest.SchemaRegistryMain

Wenn Sie die Referenzen"/opt/confluent "durch ersetzen Der tatsächliche Standort Ihrer Confluent-Installation, ich vermute, Sie werden viel mehr Glück haben.

HINWEIS: Ich ziehe Java auf Windows an einen Kunden vor Ort zu installieren (zB "C: \ java8", da viele Standard-Skripte Probleme mit C haben. \ Program Files Einsatzort

+0

Danke für den Tipp auf Java8 Installationsort! – user1860447

0

Ich habe Erfolgreich Ausführen der konfluenten Tools von cmd.exe mit cygwin

C:\>c:\cygwin64\bin\bash -l /cygdrive/c/confluent/4.0.0/bin/kafka-avro-console-consumer --bootstrap-server <my_server_name>:9092 --topic <my_topic> --property schema.registry.url=http://<my_schema_registry_url>:8081 >> tmp.txt 
Verwandte Themen