META-INF.maven.io.netty.netty-common.pom.xml Maven / Gradle / Ivy
<?xml version="1.0" encoding="UTF-8"?> <!-- ~ Copyright 2012 The Netty Project ~ ~ The Netty Project licenses this file to you under the Apache License, ~ version 2.0 (the "License"); you may not use this file except in compliance ~ with the License. You may obtain a copy of the License at: ~ ~ https://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, software ~ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT ~ WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the ~ License for the specific language governing permissions and limitations ~ under the License. --> <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 https://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>io.netty</groupId> <artifactId>netty-parent</artifactId> <version>4.1.60.Final</version> </parent> <artifactId>netty-common</artifactId> <packaging>jar</packaging> <name>Netty/Common</name> <properties> <javaModuleName>io.netty.common</javaModuleName> <collection.template.dir>${project.basedir}/src/main/templates</collection.template.dir> <collection.template.test.dir>${project.basedir}/src/test/templates</collection.template.test.dir> <collection.src.dir>${project.build.directory}/generated-sources/collections/java</collection.src.dir> <collection.testsrc.dir>${project.build.directory}/generated-test-sources/collections/java</collection.testsrc.dir> </properties> <dependencies> <dependency> <groupId>com.oracle.substratevm</groupId> <artifactId>svm</artifactId> <version>${graalvm.version}</version> <!-- Provided scope as it is only needed for compiling the SVM substitution classes --> <scope>provided</scope> </dependency> <dependency> <groupId>org.jctools</groupId> <artifactId>jctools-core</artifactId> <!-- Need compile scope to be taken into account by shade plugin --> <scope>compile</scope> </dependency> <!-- Logging frameworks - completely optional --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>io.projectreactor.tools</groupId> <artifactId>blockhound</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> </dependency> <!-- Add dependency on dev-tools as otherwise the build will fail if not installed first manually --> <!-- See https://github.com/netty/netty/issues/7842 --> <dependency> <groupId>io.netty</groupId> <artifactId>netty-dev-tools</artifactId> <scope>test</scope> <optional>true</optional> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-shade-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <artifactSet> <includes> <include>org.jctools</include> </includes> </artifactSet> <relocations> <relocation> <pattern>org.jctools.</pattern> <shadedPattern>io.netty.util.internal.shaded.org.jctools.</shadedPattern> </relocation> </relocations> <minimizeJar>true</minimizeJar> <createSourcesJar>true</createSourcesJar> <shadeSourcesContent>true</shadeSourcesContent> </configuration> </execution> </executions> </plugin> <!-- Add generated collection sources. --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <executions> <execution> <id>add-source</id> <phase>generate-sources</phase> <goals> <goal>add-source</goal> </goals> <configuration> <sources> <source>${collection.src.dir}</source> </sources> </configuration> </execution> <execution> <id>add-test-source</id> <phase>generate-test-sources</phase> <goals> <goal>add-test-source</goal> </goals> <configuration> <sources> <source>${collection.testsrc.dir}</source> </sources> </configuration> </execution> </executions> </plugin> <!-- Generate the primitive collections from the template files. --> <plugin> <groupId>org.codehaus.gmaven</groupId> <artifactId>groovy-maven-plugin</artifactId> <version>2.0</version> <dependencies> <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>2.4.8</version> </dependency> <dependency> <groupId>ant</groupId> <artifactId>ant-optional</artifactId> <version>1.5.3-1</version> </dependency> </dependencies> <executions> <execution> <id>generate-collections</id> <phase>generate-sources</phase> <goals> <goal>execute</goal> </goals> <configuration> <source>${project.basedir}/src/main/script/codegen.groovy</source> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <version>2.5.4</version> <executions> <execution> <id>generate-manifest</id> <phase>process-classes</phase> <goals> <goal>manifest</goal> </goals> <configuration> <instructions> <!-- NativeLibraryLoader can be used to manually load native libraries from other bundles that this bundle does not depend on, hence use DynamicImport-Package instruction to ensure the loading is successful --> <DynamicImport-Package>*</DynamicImport-Package> <!-- JCTools is shaded --> <Import-Package>!org.jctools.*;sun.misc;resolution:=optional;*</Import-Package> </instructions> </configuration> </execution> </executions> </plugin> </plugins> </build> </project>