2021年1月25日星期一

Building War file via including Avro auto generated classes

I've recently started using Avro and Kafka in my spring boot project. Now I've googled this and can't seem to find a straight answer.

When I build my war via my gradle build file, can I include the classes autogenerated from Avro schema?

Look at the war file when its exploded it doesnt seem to include those classes.

Here is my build.gradle file.

Many thanks for reading this question and if you have the time to help!

plugins {      id "org.springframework.boot" version "2.4.2"      id 'io.spring.dependency-management' version '1.0.8.RELEASE'      id 'java'      id "com.commercehub.gradle.plugin.avro" version "0.21.0"      id "idea"    }  group 'com.test.tge-auth-service'  version '1.0'    java {      sourceCompatibility = JavaVersion.VERSION_14      targetCompatibility = JavaVersion.VERSION_14  }    ext {      avroVersion = "1.10.1"  }    repositories {      mavenCentral()      jcenter()      maven {          url "https://packages.confluent.io/maven/"      }  }    avro {      createSetters = true      fieldVisibility = "PRIVATE"  }    //apply plugin: "war"    dependencies {  //    providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat'        compile group: 'co.elastic.logging', name: 'logback-ecs-encoder', version: '0.5.2'      compile group: 'com.amazonaws', name: 'aws-java-sdk', version: '1.11.860'        compile group: 'io.springfox', name: 'springfox-swagger-ui', version: '3.0.0'      compile group: 'io.springfox', name: 'springfox-boot-starter', version: '3.0.0'        compile('org.springframework.boot:spring-boot-starter-data-elasticsearch')      compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-mongodb', version: '2.3.3.RELEASE'      compile group: 'org.springframework.data', name: 'spring-data-elasticsearch', version: '4.0.4.RELEASE'      compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-jpa', version: '2.3.3.RELEASE'      compile group: 'org.springframework.boot', name: 'spring-boot-starter-security', version: '2.3.3.RELEASE'      compile group: 'org.springframework.security', name: 'spring-security-oauth2-client', version: '5.4.0'      compile group: 'org.springframework.boot', name: 'spring-boot-starter-validation', version: '2.4.2'      compile group: 'org.springframework.kafka', name: 'spring-kafka', version: '2.6.5'        compile group: 'javax.validation', name: 'validation-api', version: '2.0.1.Final'      compile group: 'com.fasterxml.jackson.datatype', name: 'jackson-datatype-jsr310', version: '2.11.2'        compile group: 'mysql', name: 'mysql-connector-java', version: '8.0.21'        compile group: 'io.jsonwebtoken', name: 'jjwt', version: '0.9.1'      compile group: 'org.openapitools', name: 'jackson-databind-nullable', version: '0.2.1'        compile group: 'commons-io', name: 'commons-io', version: '2.6'      compile group: 'org.apache.commons', name: 'commons-collections4', version: '4.4'      compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.11'      compile group: 'org.passay', name: 'passay', version: '1.6.0'      compile group: 'com.google.guava', name: 'guava', version: '30.0-jre'        compile group: 'io.confluent', name: 'kafka-schema-registry-client', version: '6.0.0'      compile group: 'io.confluent', name: 'kafka-avro-serializer', version: '6.0.0'      compile group: 'io.confluent', name: 'monitoring-interceptors', version: '6.0.0'      compile(group: 'io.confluent', name: 'kafka-streams-avro-serde', version:'6.0.0') {          exclude(module: 'log4j-over-slf4j')      }        compile "org.apache.avro:avro:1.10.1"      implementation "org.apache.avro:avro:${avroVersion}"        compileOnly 'org.projectlombok:lombok:1.18.12'      annotationProcessor 'org.projectlombok:lombok:1.18.12'        implementation 'com.amazonaws:aws-java-sdk-s3'      implementation 'org.springframework.boot:spring-boot-starter-web'        testCompile group: 'junit', name: 'junit', version: '4.12'      testCompileOnly 'org.projectlombok:lombok:1.18.12'      testAnnotationProcessor 'org.projectlombok:lombok:1.18.12'        testImplementation('org.springframework.boot:spring-boot-starter-test') {          exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'      }        jar {          manifest {              attributes(                      'Main-Class': 'com.test.SpringBootPersistenceApplication'              )          }          from {              configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }          }      }  }  
https://stackoverflow.com/questions/65864188/building-war-file-via-including-avro-auto-generated-classes January 24, 2021 at 04:44AM

没有评论:

发表评论