问题
I am using a Java application which start a consumer reading Kafka topics. Every time I need to start the consumer application, I have to start the Zookeeper and Kafka servers with commands in cmd. Is it possible to start/stop them with small Java programs? Thank you.
回答1:
Please see this topic, it's about starting Zookeeper in Java:
Best way to start zookeeper server from java program
directing to this:
Is it possible to start a zookeeper server instance in process, say for unit tests?
回答2:
If you need this for something like testing the I think that the better way is using the Debezium library which provides a KafkaCluster embedded implementation. You can see how we use it in the Vert.x Kafka Client project for unit testing here :
https://github.com/vert-x3/vertx-kafka-client/blob/master/src/test/java/io/vertx/kafka/client/tests/KafkaClusterTestBase.java
Take a look around that ;)
来源:https://stackoverflow.com/questions/44602797/starting-zookeeper-and-kafka-servers-from-java-application