<?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: ~ ~ http://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 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.sonatype.oss</groupId> <artifactId>oss-parent</artifactId> <version>7</version> </parent> <groupId>io.netty</groupId> <artifactId>netty-parent</artifactId> <packaging>pom</packaging> <version>4.0.0.Beta3-SNAPSHOT</version> <name>Netty</name> <url>http://netty.io/</url> <description> Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers and clients. </description> <organization> <name>The Netty Project</name> <url>http://netty.io/</url> </organization> <licenses> <license> <name>Apache License, Version 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0</url> </license> </licenses> <inceptionYear>2008</inceptionYear> <scm> <url>https://github.com/netty/netty</url> <connection>scm:git:git://github.com/netty/netty.git</connection> <developerConnection>scm:git:ssh://git@github.com/netty/netty.git</developerConnection> <tag>HEAD</tag> </scm> <developers> <developer> <id>netty.io</id> <name>The Netty Project Contributors</name> <email>netty@googlegroups.com</email> <url>http://netty.io/</url> <organization>The Netty Project</organization> <organizationUrl>http://netty.io/</organizationUrl> </developer> </developers> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <jboss.marshalling.version>1.3.14.GA</jboss.marshalling.version> </properties> <modules> <module>common</module> <module>buffer</module> <module>codec</module> <module>codec-http</module> <module>codec-socks</module> <module>transport</module> <module>transport-rxtx</module> <module>transport-sctp</module> <module>transport-udt</module> <module>handler</module> <module>example</module> <module>testsuite</module> <module>testsuite-osgi</module> <module>microbench</module> <module>all</module> <module>tarball</module> </modules> <dependencyManagement> <dependencies> <!-- JBoss Marshalling - completely optional --> <dependency> <groupId>org.jboss.marshalling</groupId> <artifactId>jboss-marshalling</artifactId> <version>${jboss.marshalling.version}</version> <scope>compile</scope> <optional>true</optional> </dependency> <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> <version>2.5.0</version> </dependency> <dependency> <groupId>com.jcraft</groupId> <artifactId>jzlib</artifactId> <version>1.1.2</version> </dependency> <dependency> <groupId>org.rxtx</groupId> <artifactId>rxtx</artifactId> <version>2.1.7</version> </dependency> <dependency> <groupId>com.barchart.udt</groupId> <artifactId>barchart-udt-bundle</artifactId> <version>2.2.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.2</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> <exclusions> <exclusion> <artifactId>mail</artifactId> <groupId>javax.mail</groupId> </exclusion> <exclusion> <artifactId>jms</artifactId> <groupId>javax.jms</groupId> </exclusion> <exclusion> <artifactId>jmxtools</artifactId> <groupId>com.sun.jdmk</groupId> </exclusion> <exclusion> <artifactId>jmxri</artifactId> <groupId>com.sun.jmx</groupId> </exclusion> </exclusions> <optional>true</optional> </dependency> <!-- Metrics providers --> <dependency> <groupId>com.yammer.metrics</groupId> <artifactId>metrics-core</artifactId> <version>2.2.0</version> </dependency> <!-- Test dependencies for jboss marshalling encoder/decoder --> <dependency> <groupId>org.jboss.marshalling</groupId> <artifactId>jboss-marshalling-serial</artifactId> <version>${jboss.marshalling.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.jboss.marshalling</groupId> <artifactId>jboss-marshalling-river</artifactId> <version>${jboss.marshalling.version}</version> <scope>test</scope> </dependency> <!-- Test dependencies for microbench --> <dependency> <groupId>com.google.caliper</groupId> <artifactId>caliper</artifactId> <version>0.5-rc1</version> <scope>test</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <!-- Byte code generator - completely optional --> <dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> <version>3.17.1-GA</version> <scope>compile</scope> <optional>true</optional> </dependency> <!-- Testing frameworks and related dependencies --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.10</version> <scope>test</scope> <exclusions> <!-- JUnit ships an older version of hamcrest. --> <exclusion> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-library</artifactId> <version>1.3</version> <scope>test</scope> </dependency> <dependency> <groupId>org.easymock</groupId> <artifactId>easymock</artifactId> <version>3.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.easymock</groupId> <artifactId>easymockclassextension</artifactId> <version>3.1</version> <scope>test</scope> </dependency> <dependency> <groupId>org.jmock</groupId> <artifactId>jmock-junit4</artifactId> <version>2.5.1</version> <scope>test</scope> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.0.9</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-enforcer-plugin</artifactId> <version>1.1</version> <executions> <execution> <id>enforce-tools</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireJavaVersion> <!-- Enforce java 1.7 as minimum for compiling --> <!-- This is needed because of java.util.zip.Deflater and NIO UDP multicast--> <version>[1.7.0,)</version> </requireJavaVersion> <requireMavenVersion> <version>[3.0.4,)</version> </requireMavenVersion> </rules> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>2.5.1</version> <configuration> <compilerVersion>1.7</compilerVersion> <fork>true</fork> <source>1.6</source> <target>1.6</target> <debug>true</debug> <optimize>true</optimize> <showDeprecation>true</showDeprecation> <showWarnings>true</showWarnings> <!-- XXX: maven-release-plugin complains - MRELEASE-715 --> <!-- <compilerArguments> <Xlint:-options /> <Xlint:unchecked /> <Xlint:deprecation /> </compilerArguments> --> </configuration> </plugin> <plugin> <!-- ensure that only methods available in java 1.6 can be used even when compiling with java 1.7+ --> <groupId>org.codehaus.mojo</groupId> <artifactId>animal-sniffer-maven-plugin</artifactId> <version>1.8</version> <configuration> <signature> <groupId>org.codehaus.mojo.signature</groupId> <artifactId>java16</artifactId> <version>1.0</version> </signature> <ignores> <ignore>sun.misc.Unsafe</ignore> <ignore>sun.misc.Cleaner</ignore> <ignore>java.util.zip.Deflater</ignore> <!-- Used for NIO UDP multicast --> <ignore>java.nio.channels.DatagramChannel</ignore> <ignore>java.nio.channels.MembershipKey</ignore> <ignore>java.net.StandardProtocolFamily</ignore> <!-- Used for NIO. 2 --> <ignore>java.nio.channels.AsynchronousChannel</ignore> <ignore>java.nio.channels.AsynchronousSocketChannel</ignore> <ignore>java.nio.channels.AsynchronousServerSocketChannel</ignore> <ignore>java.nio.channels.AsynchronousChannelGroup</ignore> <ignore>java.nio.channels.NetworkChannel</ignore> <ignore>java.nio.channels.InterruptedByTimeoutException</ignore> <ignore>java.net.StandardSocketOptions</ignore> <ignore>java.net.SocketOption</ignore> </ignores> </configuration> <executions> <execution> <phase>process-classes</phase> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.9.1</version> <executions> <execution> <id>check-style</id> <goals> <goal>check</goal> </goals> <phase>validate</phase> <configuration> <consoleOutput>true</consoleOutput> <logViolationsToConsole>true</logViolationsToConsole> <failsOnError>true</failsOnError> <failOnViolation>true</failOnViolation> <configLocation>io/netty/checkstyle.xml</configLocation> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>${project.groupId}</groupId> <artifactId>netty-build</artifactId> <version>17</version> </dependency> </dependencies> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration> <includes> <include>**/*Test*.java</include> <include>**/*Benchmark*.java</include> </includes> <excludes> <exclude>**/Abstract*</exclude> <exclude>**/TestUtil*</exclude> </excludes> <runOrder>random</runOrder> <argLine> -server -Dio.netty.resourceLeakDetection -dsa -da -ea:io.netty... -XX:+AggressiveOpts -XX:+TieredCompilation -XX:+UseBiasedLocking -XX:+UseFastAccessorMethods -XX:+UseStringCache -XX:+OptimizeStringConcat -XX:+HeapDumpOnOutOfMemoryError </argLine> </configuration> </plugin> <!-- always produce osgi bundles --> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <version>2.3.7</version> <extensions>true</extensions> </plugin> <plugin> <artifactId>maven-source-plugin</artifactId> <version>2.1.2</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-javadoc-plugin</artifactId> <version>2.8.1</version> <configuration> <detectOfflineLinks>false</detectOfflineLinks> <breakiterator>true</breakiterator> <version>false</version> <author>false</author> <keywords>true</keywords> </configuration> </plugin> <plugin> <artifactId>maven-deploy-plugin</artifactId> <version>2.7</version> <configuration> <retryFailedDeploymentCount>10</retryFailedDeploymentCount> </configuration> </plugin> <plugin> <artifactId>maven-release-plugin</artifactId> <version>2.3.2</version> <configuration> <useReleaseProfile>false</useReleaseProfile> <arguments>-P release,sonatype-oss-release,full</arguments> <autoVersionSubmodules>true</autoVersionSubmodules> <allowTimestampedSnapshots>true</allowTimestampedSnapshots> <tagNameFormat>netty-@{project.version}</tagNameFormat> </configuration> </plugin> </plugins> <pluginManagement> <plugins> <!-- keep surefire and failsafe in sync --> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.12</version> </plugin> <!-- keep surefire and failsafe in sync --> <plugin> <artifactId>maven-failsafe-plugin</artifactId> <version>2.12</version> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>2.5</version> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>2.5</version> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> </plugin> <plugin> <artifactId>maven-dependency-plugin</artifactId> <version>2.4</version> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.3</version> </plugin> <plugin> <artifactId>maven-jxr-plugin</artifactId> <version>2.2</version> </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> <dependencies> <dependency> <groupId>ant-contrib</groupId> <artifactId>ant-contrib</artifactId> <version>1.0b3</version> <exclusions> <exclusion> <groupId>ant</groupId> <artifactId>ant</artifactId> </exclusion> </exclusions> </dependency> </dependencies> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>1.7</version> </plugin> <!-- Workaround for the 'M2E plugin execution not covered' problem. See: http://wiki.eclipse.org/M2E_plugin_execution_not_covered --> <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-checkstyle-plugin</artifactId> <versionRange>[1.0,)</versionRange> <goals> <goal>check</goal> </goals> </pluginExecutionFilter> <action> <execute> <runOnIncremental>false</runOnIncremental> </execute> </action> </pluginExecution> <pluginExecution> <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <versionRange>[1.0,)</versionRange> <goals> <goal>enforce</goal> </goals> </pluginExecutionFilter> <action> <execute> <runOnIncremental>false</runOnIncremental> </execute> </action> </pluginExecution> <pluginExecution> <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-clean-plugin</artifactId> <versionRange>[1.0,)</versionRange> <goals> <goal>clean</goal> </goals> </pluginExecutionFilter> <action> <execute> <runOnIncremental>false</runOnIncremental> </execute> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>