pa.jdisc_core.7.552.18.source-code.pom.xml Maven / Gradle / Ivy
<?xml version="1.0"?> <!-- Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. --> <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.yahoo.vespa</groupId> <artifactId>parent</artifactId> <version>7.552.18</version> <relativePath>../parent/pom.xml</relativePath> </parent> <artifactId>jdisc_core</artifactId> <version>7.552.18</version> <packaging>jar</packaging> <name>${project.artifactId}</name> <dependencies> <!-- Necessary for jaxb support from java 9. (Could be deployed as bundles since 2.2.11.) --> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> </dependency> <dependency> <groupId>com.sun.activation</groupId> <artifactId>javax.activation</artifactId> </dependency> <!-- jaxb end --> <dependency> <!-- Newer version than the one in rt.jar, including the ElementTraversal class needed by Xerces (Aug 2015, still valid Sep 2017) --> <groupId>xml-apis</groupId> <artifactId>xml-apis</artifactId> <version>1.4.01</version> </dependency> <dependency> <groupId>javax.annotation</groupId> <artifactId>javax.annotation-api</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> <artifactId>testutil</artifactId> <version>${project.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>aopalliance</groupId> <artifactId>aopalliance</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> <artifactId>defaults</artifactId> <version>${project.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <scope>compile</scope> <classifier>no_aop</classifier> <!-- Non-AOP version required for Java 8 compatibility --> </dependency> <dependency> <groupId>com.google.inject.extensions</groupId> <artifactId>guice-assistedinject</artifactId> <scope>compile</scope> <exclusions> <!-- Depends on AOP version of Guice 3.0, which is not Java 8 compatible --> <exclusion> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.google.inject.extensions</groupId> <artifactId>guice-multibindings</artifactId> <scope>compile</scope> <exclusions> <!-- Depends on AOP version of Guice 3.0, which is not Java 8 compatible --> <exclusion> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.framework</artifactId> <scope>compile</scope> <exclusions> <exclusion> <groupId>org.codehaus.mojo</groupId> <artifactId>animal-sniffer-annotations</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.felix</groupId> <artifactId>org.apache.felix.log</artifactId> <scope>compile</scope> <exclusions> <exclusion> <groupId>org.osgi</groupId> <artifactId>org.osgi.compendium</artifactId> </exclusion> <exclusion> <groupId>org.osgi</groupId> <artifactId>org.osgi.core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-jdk14</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> <artifactId>config-lib</artifactId> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> <artifactId>yolean</artifactId> <version>${project.version}</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> <artifactId>vespajlib</artifactId> <version>${project.version}</version> <scope>compile</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>com.yahoo.vespa</groupId> <artifactId>abi-check-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <forkMode>once</forkMode> <redirectTestOutputToFile>${test.hide}</redirectTestOutputToFile> <systemPropertyVariables> <jdisc.logger.level>ALL</jdisc.logger.level> </systemPropertyVariables> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-install-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>copy-dependencies</id> <phase>compile</phase> <goals> <goal>copy-dependencies</goal> </goals> <configuration> <excludeTransitive>true</excludeTransitive> <stripVersion>true</stripVersion> <outputDirectory>${project.build.directory}/dependency</outputDirectory> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <executions> <execution> <id>export-packages</id> <phase>compile</phase> <goals> <goal>exec</goal> </goals> <configuration> <executable>java</executable> <arguments> <argument>--add-opens=java.base/java.net=ALL-UNNAMED</argument> <argument>-classpath</argument> <classpath /> <argument>com.yahoo.jdisc.core.ExportPackages</argument> <argument>${exportPackagesFile}</argument> <argument>__REPLACE_VERSION__${project.build.directory}/dependency/guava.jar</argument> <argument>${project.build.directory}/dependency/guice-no_aop.jar</argument> <argument>${project.build.directory}/dependency/guice-assistedinject.jar</argument> <argument>${project.build.directory}/dependency/guice-multibindings.jar</argument> <argument>${project.build.directory}/dependency/javax.annotation-api.jar</argument> <argument>${project.build.directory}/dependency/org.apache.felix.log.jar</argument> <argument>${project.build.directory}/dependency/slf4j-api.jar</argument> <argument>${project.build.directory}/dependency/slf4j-jdk14.jar</argument> <argument>${project.build.directory}/dependency/jcl-over-slf4j.jar</argument> <argument>${project.build.directory}/dependency/log4j-over-slf4j.jar</argument> <argument>${project.build.directory}/dependency/config-lib.jar</argument> <argument>${project.build.directory}/dependency/yolean.jar</argument> <argument>${project.build.directory}/dependency/jaxb-api.jar</argument> <argument>${project.build.directory}/dependency/jaxb-core.jar</argument> <argument>${project.build.directory}/dependency/jaxb-impl.jar</argument> <argument>${project.build.directory}/dependency/javax.activation.jar</argument> </arguments> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> <executions> <execution> <phase>prepare-package</phase> <goals> <goal>read-project-properties</goal> </goals> <configuration> <files> <file>${exportPackagesFile}</file> </files> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifestEntries> <Bundle-ManifestVersion>2</Bundle-ManifestVersion> <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName> <Export-Package>${exportPackages}</Export-Package> </manifestEntries> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <properties> <exportPackagesFile>${project.build.directory}/classes/exportPackages.properties</exportPackagesFile> </properties> </project>