netty5/pom.xml
Trustin Lee e424c5f87d * Added XNIO dependency (optional)
* Updated license files for XNIO
2009-02-17 10:22:53 +00:00

629 lines
22 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
* JBoss, Home of Professional Open Source
*
* Copyright 2009, Red Hat Middleware LLC, and individual contributors
* by the @author tags. See the COPYRIGHT.txt in the distribution for a
* full listing of individual contributors.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 2.1 of
* the License, or (at your option) any later version.
*
* This software is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this software; if not, write to the Free
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-->
<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>
<groupId>org.jboss.netty</groupId>
<artifactId>netty</artifactId>
<packaging>bundle</packaging>
<version>3.1.0.ALPHA4-SNAPSHOT</version>
<name>The Netty Project</name>
<url>http://www.jboss.org/netty/</url>
<description>
The Netty project is an effort to provide an asynchronous event-driven
network application framework and tools for rapid development of
maintainable high performance and high scalability protocol servers and
clients. In other words, Netty is a NIO client server framework which
enables quick and easy development of network applications such as protocol
servers and clients. It greatly simplifies and streamlines network
programming such as TCP/IP socket server.
</description>
<organization>
<name>JBoss, a division of Red Hat</name>
<url>http://www.jboss.org/</url>
</organization>
<licenses>
<license>
<name>GNU Lesser General Public License</name>
<url>http://www.gnu.org/licenses/lgpl.html</url>
</license>
</licenses>
<inceptionYear>2008</inceptionYear>
<scm>
<connection>scm:svn:http://anonsvn.jboss.org/repos/netty/trunk</connection>
<developerConnection>scm:svn:https://svn.jboss.org/repos/netty/trunk</developerConnection>
</scm>
<dependencies>
<!-- JBoss XNIO - completely optional -->
<dependency>
<groupId>org.jboss.xnio</groupId>
<artifactId>xnio-api</artifactId>
<version>1.2.0.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jboss.xnio</groupId>
<artifactId>xnio-nio</artifactId>
<version>1.2.0.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<!-- Google Protocol Buffers - completely optional -->
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>2.0.3</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<!-- Servlet API - completely optional -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<!-- IoC/DI containers - completely optional -->
<dependency>
<groupId>org.jboss.microcontainer</groupId>
<artifactId>jboss-kernel</artifactId>
<version>2.0.2.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.osgi.core</artifactId>
<version>1.2.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.felix</groupId>
<artifactId>org.osgi.compendium</artifactId>
<version>1.2.0</version>
<scope>compile</scope>
<optional>true</optional>
<exclusions>
<exclusion>
<groupId>org.apache.felix</groupId>
<artifactId>javax.servlet</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.felix</groupId>
<artifactId>org.osgi.foundation</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.code.guice</groupId>
<artifactId>guice</artifactId>
<version>1.0</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.0.8</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<!-- Logging frameworks - completely optional -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.6</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jboss.logging</groupId>
<artifactId>jboss-logging-spi</artifactId>
<version>2.0.5.GA</version>
<scope>compile</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.15</version>
<scope>compile</scope>
<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>
<!-- Testing frameworks and related dependencies -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>2.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymockclassextension</artifactId>
<version>2.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.5.6</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<encoding>UTF-8</encoding>
<source>1.5</source>
<target>1.5</target>
<debug>true</debug>
<optimize>true</optimize>
<showDeprecations>true</showDeprecations>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.3</version>
<configuration>
<excludes>
<exclude>**/Abstract*</exclude>
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>1.4.3</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Bundle-SymbolicName>${project.groupId}</Bundle-SymbolicName>
<Bundle-DocURL>${project.url}</Bundle-DocURL>
<Bundle-Activator>
${project.groupId}.container.osgi.NettyBundleActivator
</Bundle-Activator>
<Export-Package>
!${project.groupId}.example.*,
!${project.groupId}.logging.*,
!${project.groupId}.util.*,
${project.groupId}.*;version=${project.version}
</Export-Package>
<Private-Package>
${project.groupId}.example.*,
${project.groupId}.logging.*,
${project.groupId}.util.*,
</Private-Package>
<Import-Package>
*;resolution:=optional
</Import-Package>
</instructions>
</configuration>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>2.0.4</version>
<executions>
<execution>
<id>attach-source</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<attach>true</attach>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<id>write-version</id>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<echo message="${project.version}" file="${project.build.directory}/version.txt" />
</tasks>
</configuration>
</execution>
<execution>
<id>add-license</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<taskdef resource="net/sf/antcontrib/antlib.xml" />
<if>
<or>
<equals arg2="jar" arg1="${project.packaging}" />
<equals arg2="bundle" arg1="${project.packaging}" />
</or>
<then>
<move file="${project.build.directory}/${project.build.finalName}.jar" tofile="${project.build.directory}/${project.build.finalName}.orig.jar" />
<zip destfile="${project.build.directory}/${project.build.finalName}.jar">
<zipfileset dir="${basedir}" prefix="META-INF/">
<include name="LICENSE.*" />
<include name="NOTICE.*" />
<include name="COPYRIGHT.*" />
</zipfileset>
<zipfileset dir="${basedir}/license" prefix="META-INF/license/">
<exclude name="**/.*/**" />
<include name="**" />
</zipfileset>
<zipfileset filemode="644" src="${project.build.directory}/${project.build.finalName}.orig.jar" dirmode="755">
<exclude name="*/*/*/example/**" />
</zipfileset>
</zip>
<delete file="${project.build.directory}/${project.build.finalName}.orig.jar" />
<move file="${project.build.directory}/${project.build.finalName}-sources.jar" tofile="${project.build.directory}/${project.build.finalName}-sources.orig.jar" />
<zip destfile="${project.build.directory}/${project.build.finalName}-sources.jar">
<zipfileset dir="${basedir}" prefix="META-INF/">
<include name="LICENSE.*" />
<include name="NOTICE.*" />
<include name="COPYRIGHT.*" />
</zipfileset>
<zipfileset dir="${basedir}/license" prefix="META-INF/license/">
<exclude name="**/.*/**" />
<include name="**" />
</zipfileset>
<zipfileset filemode="644" src="${project.build.directory}/${project.build.finalName}-sources.orig.jar" dirmode="755">
<exclude name="*/*/*/example/**" />
</zipfileset>
</zip>
<delete file="${project.build.directory}/${project.build.finalName}-sources.orig.jar" />
</then>
</if>
</tasks>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant</artifactId>
<version>1.7.1</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-launcher</artifactId>
<version>1.7.1</version>
</dependency>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b2</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>generate-javadoc</id>
<phase>package</phase>
<goals>
<goal>javadoc</goal>
</goals>
</execution>
</executions>
<configuration>
<doclet>org.jboss.apiviz.APIviz</doclet>
<docletArtifact>
<groupId>org.jboss.apiviz</groupId>
<artifactId>apiviz</artifactId>
<version>1.2.5.GA</version>
</docletArtifact>
<attach>false</attach>
<useStandardDocletOptions>true</useStandardDocletOptions>
<outputDirectory>${project.build.directory}/api</outputDirectory>
<reportOutputDirectory>${project.build.directory}/api</reportOutputDirectory>
<destDir>api</destDir>
<charset>UTF-8</charset>
<docencoding>UTF-8</docencoding>
<breakiterator>true</breakiterator>
<version>true</version>
<author>true</author>
<keywords>true</keywords>
<overview>${basedir}/src/javadoc/overview.html</overview>
<doctitle>${project.name} ${project.version} API Reference</doctitle>
<windowtitle>${project.name} ${project.version} API Reference</windowtitle>
<additionalparam>
-link http://java.sun.com/javase/6/docs/api/
-link http://code.google.com/apis/protocolbuffers/docs/reference/java/
-link http://java.sun.com/products/servlet/2.5/docs/servlet-2_5-mr2/
-link http://www.osgi.org/javadoc/r4v41/
-link http://google-guice.googlecode.com/svn/trunk/javadoc/
-link http://static.springframework.org/spring/docs/2.5.x/api/
-link http://www.slf4j.org/apidocs/
-link http://commons.apache.org/logging/commons-logging-1.1.1/apidocs/
-link http://logging.apache.org/log4j/1.2/apidocs/
-group "Low-level data representation" ${project.groupId}.buffer*
-group "Central interface for all I/O operations" ${project.groupId}.channel*
-group "Client &amp; Server bootstrapping utilities" ${project.groupId}.bootstrap*
-group "Reusable I/O event interceptors" ${project.groupId}.handler*
-group "IoC (Dependency Injection) container integration" ${project.groupId}.container*
-group "Miscellaneous" ${project.groupId}.logging*
-nopackagediagram
-sourceclasspath ${project.build.outputDirectory}
</additionalparam>
<encoding>UTF-8</encoding>
<locale>en_US</locale>
<excludePackageNames>${project.groupId}.example*:${project.groupId}.util*</excludePackageNames>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jxr-plugin</artifactId>
<version>2.1</version>
<executions>
<execution>
<id>generate-xref</id>
<phase>package</phase>
<goals>
<goal>jxr</goal>
</goals>
</execution>
</executions>
<configuration>
<inputEncoding>UTF-8</inputEncoding>
<outputEncoding>UTF-8</outputEncoding>
<linkJavadoc>true</linkJavadoc>
<destDir>${project.build.directory}/xref</destDir>
<javadocDir>${project.build.directory}/api</javadocDir>
</configuration>
</plugin>
<plugin>
<groupId>org.jboss.maven.plugins</groupId>
<artifactId>maven-jdocbook-plugin</artifactId>
<version>2.1.2</version>
<executions>
<execution>
<id>generate-docbook</id>
<phase>package</phase>
<goals>
<goal>resources</goal>
<goal>generate</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jboss</groupId>
<artifactId>jbossorg-docbook-xslt</artifactId>
<version>1.1.0</version>
</dependency>
<dependency>
<groupId>org.jboss</groupId>
<artifactId>jbossorg-jdocbook-style</artifactId>
<version>1.1.0</version>
<type>jdocbook-style</type>
</dependency>
</dependencies>
<configuration>
<sourceDocumentName>master.xml</sourceDocumentName>
<sourceDirectory>${basedir}/src/docbook</sourceDirectory>
<cssResource>
<directory>${basedir}/src/docbook</directory>
<includes>
<include>css/**/*</include>
</includes>
</cssResource>
<imageResource>
<directory>${basedir}/src/docbook</directory>
<includes>
<include>images/**/*</include>
</includes>
</imageResource>
<formats>
<format>
<formatName>html</formatName>
<stylesheetResource>file://${basedir}/src/docbook/xslt/xhtml.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
<format>
<formatName>html_single</formatName>
<stylesheetResource>file://${basedir}/src/docbook/xslt/xhtml-single.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
<format>
<formatName>eclipse</formatName>
<stylesheetResource>file://${basedir}/src/docbook/xslt/eclipse.xsl</stylesheetResource>
<finalName>index.html</finalName>
</format>
<format>
<formatName>pdf</formatName>
<stylesheetResource>file://${basedir}/src/docbook/xslt/pdf.xsl</stylesheetResource>
<finalName>netty.pdf</finalName>
</format>
</formats>
<options>
<xincludeSupported>true</xincludeSupported>
<xmlTransformerType>saxon</xmlTransformerType>
<docbookVersion>1.72.0</docbookVersion>
</options>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-3</version>
<executions>
<execution>
<id>generate-distribution</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<descriptors>
<descriptor>${basedir}/src/assembly/default.xml</descriptor>
</descriptors>
<attach>false</attach>
<appendAssemblyId>true</appendAssemblyId>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.0-beta-8</version>
<configuration>
<tagBase>https://svn.jboss.org/repos/netty/tags</tagBase>
<!-- We don't want to use the default release profile because it
causes the JavaDoc and source jars to be deployed twice. -->
<useReleaseProfile>false</useReleaseProfile>
<!-- Activate a custom profile called "release" -->
<arguments>-Prelease</arguments>
</configuration>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
<releases>
<enabled>true</enabled>
<updatePolicy>interval:10080</updatePolicy>
</releases>
<id>jboss.release</id>
<name>JBoss releases</name>
<url>http://repository.jboss.org/maven2</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<snapshots>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</snapshots>
<releases>
<enabled>true</enabled>
<updatePolicy>interval:10080</updatePolicy>
</releases>
<id>jboss.release</id>
<name>JBoss releases</name>
<url>http://repository.jboss.org/maven2</url>
</pluginRepository>
</pluginRepositories>
<distributionManagement>
<repository>
<id>repository.jboss.org</id>
<name>JBoss.org Release Distribution Repository</name>
<url>https://svn.jboss.org/repos/repository.jboss.org/maven2</url>
</repository>
<snapshotRepository>
<id>snapshots.jboss.org</id>
<name>JBoss.org Development Snapshot Repository</name>
<url>https://snapshots.jboss.org/maven2</url>
</snapshotRepository>
</distributionManagement>
<profiles>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<inherited>true</inherited>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.4</version>
<configuration>
<updateReleaseInfo>true</updateReleaseInfo>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>