<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>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.core</artifactId> <version>6.2.8-SNAPSHOT</version> <relativePath>../pom.xml</relativePath> </parent> <artifactId>org.hl7.fhir.validation.cli</artifactId> <packaging>jar</packaging> <properties> <checkstyle_config_location>${project.parent.basedir}</checkstyle_config_location> </properties> <dependencies> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.validation</artifactId> <version>${project.version}</version> </dependency> <!-- JUnit Jupiter --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>net.bytebuddy</groupId> <artifactId>byte-buddy</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <scope>compile</scope> </dependency> <!-- shoo! <dependency> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> <version>${junit_jupiter_version}</version> <scope>compile</scope> </dependency> --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-params</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-launcher</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>compile</scope> </dependency> <!-- org.hl7.fhir.core test-jars --> <!-- These jars contain the test code for running unit tests at runtime. Any modules that are intended to be run via the validator -run-tests option need to be included here. --> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.utilities</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.convertors</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.dstu2</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.dstu3</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.dstu2016may</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.r4</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.r4b</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.r5</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>ca.uhn.hapi.fhir</groupId> <artifactId>org.hl7.fhir.validation</artifactId> <classifier>tests</classifier> <type>test-jar</type> <version>${project.version}</version> <scope>compile</scope> </dependency> <!-- /org.hl7.fhir.core test-jars --> <!-- org.hl7.fhir.core test-jar dependencies --> <!-- If the included org.hl7.fhir.xxx test jars have dependencies, they will have a <scope>test</scope> entry. This will prevent them from being included in regular runtime, so we override this with a duplicate entry below with <scope>compile<scope/> --> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${mockito_version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <version>${mockito_version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.commonmark</groupId> <artifactId>commonmark</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.commonmark</groupId> <artifactId>commonmark-ext-gfm-tables</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml-full</artifactId> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>org.everit.json</groupId> <artifactId>org.everit.json.schema</artifactId> <version>1.1.0</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>mockwebserver</artifactId> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>com.squareup.okio</groupId> <artifactId>okio</artifactId> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>com.squareup.okio</groupId> <artifactId>okio-jvm</artifactId> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>org.antlr</groupId> <artifactId>ST4</artifactId> <version>4.1</version> <optional>false</optional> <scope>compile</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-library</artifactId> <version>${hamcrest_version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest</artifactId> <version>${hamcrest_version}</version> <scope>compile</scope> </dependency> <!-- /org.hl7.fhir.core test-jar dependencies --> <!-- The following dependencies are all listed as optional dependencies in org.hl7.fhir.utilities (and others) but are required for the CLI to work, so we explicitly bring them in here. --> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency> <dependency> <groupId>org.fhir</groupId> <artifactId>ucum</artifactId> </dependency> <dependency> <groupId>org.ogce</groupId> <artifactId>xpp3</artifactId> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> </dependency> </dependencies> <build> <plugins> <!-- Build a fatjar containing all dependencies --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>unpack-dependencies</id> <phase>process-classes</phase> <goals> <goal>unpack-dependencies</goal> </goals> <configuration> <excludes>**/module-info.class,META-INF/*</excludes> <outputDirectory>${project.build.directory}/classes</outputDirectory> <overWriteReleases>false</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> <!--<excludeScope>test</excludeScope>--> <includeScope>compile</includeScope> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>${maven-jar-plugin.version}</version> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <classpathLayoutType>repository</classpathLayoutType> <mainClass>org.hl7.fhir.validation.ValidatorCli</mainClass> </manifest> </archive> </configuration> </plugin> <!-- These two plugins provide quality checks that don't make sense to perform on a fatjar. --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>animal-sniffer-maven-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <groupId>org.basepom.maven</groupId> <artifactId>duplicate-finder-maven-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>default-cli</id> <goals> <goal>exec</goal> </goals> <configuration> <executable>${env.JAVA_HOME}/bin/java</executable> <!-- optional --> <workingDirectory>/tmp</workingDirectory> <arguments> <argument>-jar</argument> <argument>${project.basedir}/target/org.hl7.fhir.validation.cli-${project.version}.jar</argument> </arguments> </configuration> </execution> </executions> </plugin> </plugins> <pluginManagement> <plugins> <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> <version>1.0.0</version> <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId> org.apache.maven.plugins </groupId> <artifactId> maven-dependency-plugin </artifactId> <versionRange> [3.0.2,) </versionRange> <goals> <goal> unpack-dependencies </goal> </goals> </pluginExecutionFilter> <action> <ignore></ignore> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <configuration> <skipStaging>true</skipStaging> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <plugin> <groupId>org.owasp</groupId> <artifactId>dependency-check-maven</artifactId> <configuration> <suppressionFiles> <suppressionFile>cve-suppression.xml</suppressionFile> </suppressionFiles> <excludes> <!-- These are our own modules, and contain test archives for zip-slip, which break owasp archive extraction --> <exclude>ca.uhn.hapi.fhir:org.hl7.fhir.convertors</exclude> <exclude>ca.uhn.hapi.fhir:org.hl7.fhir.r4b</exclude> <exclude>ca.uhn.hapi.fhir:org.hl7.fhir.r5</exclude> <exclude>ca.uhn.hapi.fhir:org.hl7.fhir.utilities</exclude> <exclude>ca.uhn.hapi.fhir:org.hl7.fhir.validation</exclude> </excludes> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>