A Gradle plugin aimed to help working with Apache Avro. It supports Java code generation from JSON schema declaration files(.avsc), JSON protocol declaration files(.avpr), and Avro IDL files.
In the future, it should support Schema Registry integration, as well.
If you're looking for examples of how to set up this plugin, there are a few use-cases available for you to look.
There are two use-cases covered by this plugin, Code Generation and Schema Registry integration. Those are segregated into two separated namespaces: Columba and Navis.
At this moment, just the Columba portion has some functionalities ready for use.
You can learn about Columba in more depth here.
Add the following to your build files. Substitute the desired version based on your needs.
settings.gradle
pluginManagement {
repositories {
mavenCentral()
gradlePluginPortal()
}
}
build.gradle
plugins {
id 'io.github.leofuso.argo' version 'VERSION'
}
... and that's it!
Special notes relevant to using this plugin via the Gradle Kotlin DSL:
- Apply the plugin declaratively using the
plugins {}
block. Otherwise, various features mayn't work as intended. - See Configuring Plugins in the Gradle Kotlin DSL for more details.
- Configuration in the
avro {}
block must be applied differently than in the Groovy DSL.
This plugin is licensed under the Apache-2.0 License. See the License file for details.