I set up kafka neo4j sink connector the following way:
-
Created
/tmp/plugins
, downloadedneo4j-kafka-connect-neo4j-5.0.2.zip
and unzip into plugins folder i.e. -
Modified
connect-standalone.properties
, addedplugin.path=/tmp/plugins
-
Created
connect-neo4j-sink.properties
in config with the followingtopics=my-events connector.class=streams.kafka.connect.sink.Neo4jSinkConnector key.converter=org.apache.kafka.connect.json.JsonConverter key.converter.schemas.enable=false value.converter=org.apache.kafka.connect.json.JsonConverter errors.retry.timeout=-1 errors.retry.delay.max.ms=1000 errors.tolerance=all errors.log.enable=true errors.log.include.messages=true neo4j.server.uri=bolt://neo4j:7687 neo4j.authentication.basic.username=neo4j neo4j.authentication.basic.password=neo4j neo4j.encryption.enabled=false neo4j.topic.cypher.my-topic=MERGE (p:Person{name: event.name, surname: event.surname}) MERGE (f:Family{name: event.surname}) MERGE (p)-[:BELONGS_TO]->(f)```
And when I start:
/bin/connect-standalone.sh config/connect-standalone.properties config/connect-neo4j-sink.properties
I get this error:
Caused by: org.apache.kafka.connect.errors.ConnectException: Failed to find any class that implements Connector and which name matches streams.kafka.connect.sink.Neo4jSinkConnector
Environment
- neo4j:5-community
- apache kafka 2.13-3.6.0
In the startup logs, Connect will print all plugins it did find. Use that to debug