Created
July 17, 2020 15:51
-
-
Save iainporter/d2f68e081ed043ee2c078d07de9889b4 to your computer and use it in GitHub Desktop.
POM file for sms-openapi maven module
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<project xmlns="http://maven.apache.org/POM/4.0.0" | |
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | |
<modelVersion>4.0.0</modelVersion> | |
<parent> | |
<groupId>com.porterhead</groupId> | |
<artifactId>sms-service-parent</artifactId> | |
<version>1.0.0</version> | |
</parent> | |
<groupId>com.porterhead.openapi</groupId> | |
<artifactId>sms-openapi</artifactId> | |
<properties> | |
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> | |
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> | |
<java.version>1.8</java.version> | |
<required-maven.version>[3.5.2,)</required-maven.version> | |
<maven.compiler.source>${java.version}</maven.compiler.source> | |
<maven.compiler.target>${java.version}</maven.compiler.target> | |
<validation-api.version>2.0.1.Final</validation-api.version> | |
<jackson-version>2.11.0</jackson-version> | |
<swagger-annotations.version>1.6.1</swagger-annotations.version> | |
<javax.annotation-api.version>1.3.2</javax.annotation-api.version> | |
<jsr305.version>3.0.2</jsr305.version> | |
<kotlin.version>1.3.72</kotlin.version> | |
<spek.version>2.0.9</spek.version> | |
</properties> | |
<repositories> | |
<repository> | |
<id>spek-dev</id> | |
<url>https://dl.bintray.com/spekframework/spek-dev</url> | |
</repository> | |
</repositories> | |
<dependencies> | |
<dependency> | |
<groupId>javax.validation</groupId> | |
<artifactId>validation-api</artifactId> | |
<version>${validation-api.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>javax.annotation</groupId> | |
<artifactId>javax.annotation-api</artifactId> | |
<version>${javax.annotation-api.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>com.fasterxml.jackson.core</groupId> | |
<artifactId>jackson-annotations</artifactId> | |
<version>${jackson-version}</version> | |
</dependency> | |
<dependency> | |
<groupId>com.fasterxml.jackson.core</groupId> | |
<artifactId>jackson-databind</artifactId> | |
<version>${jackson-version}</version> | |
</dependency> | |
<dependency> | |
<groupId>com.fasterxml.jackson.module</groupId> | |
<artifactId>jackson-module-kotlin</artifactId> | |
<version>${jackson-version}</version> | |
</dependency> | |
<dependency> | |
<groupId>com.fasterxml.jackson.datatype</groupId> | |
<artifactId>jackson-datatype-jdk8</artifactId> | |
<version>${jackson-version}</version> | |
</dependency> | |
<dependency> | |
<groupId>io.swagger</groupId> | |
<artifactId>swagger-annotations</artifactId> | |
<version>${swagger-annotations.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.openapitools</groupId> | |
<artifactId>jackson-databind-nullable</artifactId> | |
<version>0.2.0</version> | |
</dependency> | |
<dependency> | |
<groupId>org.hibernate.validator</groupId> | |
<artifactId>hibernate-validator</artifactId> | |
<version>6.0.18.Final</version> | |
</dependency> | |
<dependency> | |
<groupId>org.glassfish.web</groupId> | |
<artifactId>javax.el</artifactId> | |
<version>2.2.6</version> | |
</dependency> | |
<dependency> | |
<groupId>jakarta.validation</groupId> | |
<artifactId>jakarta.validation-api</artifactId> | |
<version>2.0.2</version> | |
</dependency> | |
<dependency> | |
<groupId>com.fasterxml.jackson.datatype</groupId> | |
<artifactId>jackson-datatype-jsr310</artifactId> | |
<version>${jackson-version}</version> | |
</dependency> | |
<dependency> | |
<groupId>com.google.code.findbugs</groupId> | |
<artifactId>jsr305</artifactId> | |
<version>${jsr305.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>javax.el</groupId> | |
<artifactId>javax.el-api</artifactId> | |
<version>3.0.1-b06</version> | |
</dependency> | |
<dependency> | |
<groupId>org.jetbrains.kotlin</groupId> | |
<artifactId>kotlin-reflect</artifactId> | |
<version>${kotlin.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.spekframework.spek2</groupId> | |
<artifactId>spek-dsl-jvm</artifactId> | |
<version>${spek.version}</version> | |
<scope>test</scope> | |
<exclusions> | |
<exclusion> | |
<groupId>org.jetbrains.kotlin</groupId> | |
<artifactId>*</artifactId> | |
</exclusion> | |
</exclusions> | |
</dependency> | |
<dependency> | |
<groupId>org.spekframework.spek2</groupId> | |
<artifactId>spek-runner-junit5</artifactId> | |
<version>${spek.version}</version> | |
<exclusions> | |
<exclusion> | |
<groupId>org.jetbrains.kotlin</groupId> | |
<artifactId>*</artifactId> | |
</exclusion> | |
</exclusions> | |
</dependency> | |
<dependency> | |
<groupId>org.junit.platform</groupId> | |
<artifactId>junit-platform-runner</artifactId> | |
<version>1.6.2</version> | |
<scope>test</scope> | |
</dependency> | |
<dependency> | |
<groupId>org.jetbrains.kotlin</groupId> | |
<artifactId>kotlin-stdlib-jdk8</artifactId> | |
<version>${kotlin.version}</version> | |
</dependency> | |
<dependency> | |
<groupId>org.jetbrains.kotlin</groupId> | |
<artifactId>kotlin-test</artifactId> | |
<version>${kotlin.version}</version> | |
<scope>test</scope> | |
</dependency> | |
</dependencies> | |
<build> | |
<sourceDirectory>target/generated-sources/openapi/src/gen/java/main</sourceDirectory> | |
<testSourceDirectory>src/test</testSourceDirectory> | |
<finalName>${project.artifactId}</finalName> | |
<plugins> | |
<!-- copy the oa3 spec files into the classpath | |
This needs to happen BEFORE the usual compile phase as the | |
code generator won't be able to resolve the classpath references | |
--> | |
<plugin> | |
<artifactId>maven-resources-plugin</artifactId> | |
<executions> | |
<execution> | |
<id>copy-resources</id> | |
<phase>generate-sources</phase> | |
<goals> | |
<goal>copy-resources</goal> | |
</goals> | |
<configuration> | |
<outputDirectory>${project.build.directory}/classes</outputDirectory> | |
<resources> | |
<resource> | |
<directory>${project.basedir}/src/main/resources</directory> | |
<filtering>false</filtering> | |
</resource> | |
</resources> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<!-- add the generated sources to the compile path so that they are included in the jar--> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>build-helper-maven-plugin</artifactId> | |
<executions> | |
<execution> | |
<phase>compile</phase> | |
<goals> | |
<goal>add-source</goal> | |
</goals> | |
<configuration> | |
<sources> | |
<source>${project.build.directory}/generated-sources/openapi/src/gen/java/main</source> | |
</sources> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<!-- Generate the openapi artefacts and the POJOs--> | |
<plugin> | |
<groupId>org.codehaus.mojo</groupId> | |
<artifactId>build-helper-maven-plugin</artifactId> | |
<version>3.1.0</version> | |
<executions> | |
<execution> | |
<id>add-source</id> | |
<phase>generate-sources</phase> | |
<goals> | |
<goal>add-source</goal> | |
</goals> | |
<configuration> | |
<sources> | |
<source>${project.build.directory}/generated-sources/openapi/src/gen/java/main</source> | |
</sources> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.openapitools</groupId> | |
<artifactId>openapi-generator-maven-plugin</artifactId> | |
<executions> | |
<execution> | |
<id>genyaml-v1</id> | |
<phase>generate-sources</phase> | |
<goals> | |
<goal>generate</goal> | |
</goals> | |
<configuration> | |
<inputSpec>${project.basedir}/target/classes/sms-openapi.yaml</inputSpec> | |
<output>target/classes</output> | |
<generatorName>openapi-yaml</generatorName> | |
<configOptions> | |
<outputFile>openapi/sms-openapi.yaml</outputFile> | |
</configOptions> | |
</configuration> | |
</execution> | |
<execution> | |
<id>genpojo</id> | |
<phase>generate-sources</phase> | |
<goals> | |
<goal>generate</goal> | |
</goals> | |
<configuration> | |
<inputSpec>${project.basedir}/target/classes/sms-openapi.yaml</inputSpec> | |
<generatorName>java</generatorName> | |
<library>resttemplate</library> | |
<generateApis>false</generateApis> | |
<generateSupportingFiles>false</generateSupportingFiles> | |
<generateApiDocumentation>false</generateApiDocumentation> | |
<generateModelDocumentation>false</generateModelDocumentation> | |
<generateApiTests>false</generateApiTests> | |
<generateModelTests>false</generateModelTests> | |
<groupId>${project.groupId}</groupId> | |
<artifactVersion>${project.version}</artifactVersion> | |
<configOptions> | |
<modelPackage>com.porterhead.api.sms</modelPackage> | |
<sourceFolder>src/gen/java/main</sourceFolder> | |
<dateLibrary>java8</dateLibrary> | |
<java8>true</java8> | |
<useBeanValidation>true</useBeanValidation> | |
</configOptions> | |
</configuration> | |
</execution> | |
</executions> | |
</plugin> | |
<plugin> | |
<groupId>org.jetbrains.kotlin</groupId> | |
<artifactId>kotlin-maven-plugin</artifactId> | |
<version>${kotlin.version}</version> | |
<executions> | |
<execution> | |
<id>compile</id> | |
<phase>compile</phase> | |
<goals> | |
<goal>compile</goal> | |
</goals> | |
</execution> | |
<execution> | |
<id>test-compile</id> | |
<phase>test-compile</phase> | |
<goals> | |
<goal>test-compile</goal> | |
</goals> | |
</execution> | |
</executions> | |
<configuration> | |
<jvmTarget>1.8</jvmTarget> | |
</configuration> | |
</plugin> | |
<plugin> | |
<groupId>org.apache.maven.plugins</groupId> | |
<artifactId>maven-compiler-plugin</artifactId> | |
<executions> | |
<execution> | |
<id>compile</id> | |
<phase>compile</phase> | |
<goals> | |
<goal>compile</goal> | |
</goals> | |
</execution> | |
<execution> | |
<id>testCompile</id> | |
<phase>test-compile</phase> | |
<goals> | |
<goal>testCompile</goal> | |
</goals> | |
</execution> | |
</executions> | |
</plugin> | |
</plugins> | |
</build> | |
</project> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment