В целом, контроль версий хорош, но вы должны игнорировать сгенерированные источники, такие как те, которые попадают в папку target
в Maven.
Сгенерированные классы Java могут помещаться в разделяемую библиотеку, размещенную в Nexus / Artifactory, например, во время mvn deploy
, и оттуда могут быть подходящим образом созданы для использования пользователями.
В сгенерированных классах avro-maven-plugin схема доступна как статическое поле, поэтому вам не нужно копировать эти ресурсы в пакет.
В противном случае, если вы используете реестр Confluent Schema, вы можете использовать тип GenericRecord
в своих потребителях, а затем проанализировать сообщения, как обычно, например, для сообщения JSON.Например, Object fieldName = message.value().get("fieldName")
, в то же время производители могут иметь определенный класс Avro
.