在 gradle 中使用 sbt Avrohugger 插件 [英] Using sbt Avrohugger plugin in gradle
问题描述
我正在使用 https://github.com/julianpeeters/avrohugger sbt 插件生成 ScalaAvro .avsc
文件的 case 类.如何在 Gradle 项目中使用相同的插件?
I am using https://github.com/julianpeeters/avrohugger sbt plugin to generate Scala case classes for Avro .avsc
files. How can I use the same plugin in a Gradle project?
推荐答案
我创建了 gradle 插件,用于从 Avro 模式生成 Scala 案例类,它在内部使用 avrohugger
库.
I created gradle plugin for generating Scala case classes from Avro schema and it internally uses avrohugger
library.
所以现在把这个插件添加到你的项目中就足够了:
So now it's enough to add this plugin to your project:
plugins {
id 'com.zlad.gradle.avrohugger' version '0.2.1'
}
当你想编译 Scala 源代码时,你也需要 Scala 库依赖:
When you want to compile Scala sources you need Scala library dependency too:
plugins {
id 'scala'
id 'com.zlad.gradle.avrohugger' version '0.2.1'
}
repositories {
mavenCentral()
}
dependencies {
compile 'org.scala-lang:scala-library:2.12.8'
}
Scala 类将在构建期间在 compileScala
任务之前自动生成.默认情况下,avro 架构应该在 src/main/avro
中,生成的源将在 build/generated-src/avro
Scala classes will be automatically generated during build before compileScala
task. By default avro schema should be in src/main/avro
and generated sources will be in build/generated-src/avro
您可以调用 generateAvroScala
手动调用 Scala 源代码生成.
You can call generateAvroScala
to invoke Scala sources generation manually.
您可以在 gradle-avrohugger-plugin github 页面上找到所有详细信息和配置选项.
这篇关于在 gradle 中使用 sbt Avrohugger 插件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!