pom.xml revision 288
52N/A<?xml version="1.0" encoding="iso-8859-1"?>
52N/A<!--
52N/A DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
52N/A
275N/A Copyright 1997-2010 Sun Microsystems, Inc. All rights reserved.
52N/A
52N/A The contents of this file are subject to the terms of either the GNU
52N/A General Public License Version 2 only ("GPL") or the Common Development
52N/A and Distribution License("CDDL") (collectively, the "License"). You
52N/A may not use this file except in compliance with the License. You can obtain
52N/A a copy of the License at https://glassfish.dev.java.net/public/CDDL+GPL.html
52N/A or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
52N/A language governing permissions and limitations under the License.
52N/A
52N/A When distributing the software, include this License Header Notice in each
52N/A file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
52N/A Sun designates this particular file as subject to the "Classpath" exception
52N/A as provided by Sun in the GPL Version 2 section of the License file that
52N/A accompanied this code. If applicable, add the following below the License
52N/A Header, with the fields enclosed by brackets [] replaced by your own
52N/A identifying information: "Portions Copyrighted [year]
52N/A [name of copyright owner]"
52N/A
52N/A Contributor(s):
52N/A
52N/A If you wish your version of this file to be governed by only the CDDL or
52N/A only the GPL Version 2, indicate your decision by adding "[Contributor]
52N/A elects to include this software in this distribution under the [CDDL or GPL
52N/A Version 2] license." If you don't indicate a single choice of license, a
52N/A recipient has the option to distribute your version of this file under
52N/A either the CDDL, the GPL Version 2 or to extend the choice of license to
52N/A its licensees as provided above. However, if you add GPL Version 2 code
52N/A and therefore, elected the GPL Version 2 license, then the option applies
52N/A only if the new code is made subject to such option by the copyright
52N/A holder.
52N/A-->
52N/A
6N/A<project xmlns="http://maven.apache.org/POM/4.0.0"
6N/A xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6N/A xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
6N/A http://maven.apache.org/maven-v4_0_0.xsd">
6N/A <modelVersion>4.0.0</modelVersion>
15N/A <groupId>com.sun.mail</groupId>
6N/A <artifactId>all</artifactId>
6N/A <packaging>pom</packaging>
201N/A <version>1.4.4-SNAPSHOT</version>
6N/A <name>JavaMail API distribution</name>
15N/A <description>${project.name}</description>
6N/A <url>http://java.sun.com/projects/javamail</url>
6N/A
6N/A <licenses>
6N/A <license>
6N/A <name>CDDL</name>
6N/A <url>http://www.sun.com/cddl</url>
6N/A <distribution>repo</distribution>
6N/A <comments>A business-friendly OSS license</comments>
6N/A </license>
6N/A <license>
6N/A <name>GPLv2+CE</name>
15N/A <url>https://glassfish.dev.java.net/public/CDDL+GPL.html</url>
6N/A <distribution>repo</distribution>
6N/A <comments>GPL version 2 plus the Classpath Exception</comments>
6N/A </license>
6N/A </licenses>
6N/A
6N/A <organization>
6N/A <name>Sun Microsystems, Inc.</name>
6N/A <url>http://www.sun.com</url>
6N/A </organization>
6N/A
6N/A <properties>
201N/A <mail.version>1.4.4-SNAPSHOT</mail.version>
121N/A <!-- like mail.version, but with underscores instead of dots -->
201N/A <mail.zipversion>1_4_4-SNAPSHOT</mail.zipversion>
6N/A <mail.spec.version>1.4</mail.spec.version>
6N/A <activation-api.version>1.1</activation-api.version>
15N/A <!-- defaults that are overridden in mail module -->
15N/A <mail.extensionName>
15N/A ${project.groupId}.${project.artifactId}
15N/A </mail.extensionName>
15N/A <mail.specificationTitle>
15N/A ${project.groupId}.${project.artifactId}
15N/A </mail.specificationTitle>
15N/A <mail.implementationTitle>
15N/A ${project.groupId}.${project.artifactId}
15N/A </mail.implementationTitle>
44N/A <mail.packages.export>
44N/A javax.mail.*; version=${mail.spec.version}
44N/A </mail.packages.export>
191N/A <mail.packages.import>
191N/A javax.security.sasl;resolution:=optional,
191N/A sun.security.util;resolution:=optional,
191N/A jcifs.ntlmssp;resolution:=optional,
191N/A *
191N/A </mail.packages.import>
44N/A <mail.packages.private>
44N/A com.sun.mail.*
44N/A </mail.packages.private>
190N/A <mail.probeFile/>
194N/A <!-- for the osgiversion-maven-plugin -->
194N/A <hk2.plugin.version>0.4.11</hk2.plugin.version>
220N/A <javac.path>/opt/jdk1.4/bin/javac</javac.path>
221N/A <project.build.sourceEncoding>iso-8859-1</project.build.sourceEncoding>
6N/A </properties>
6N/A
6N/A <developers>
6N/A <developer>
6N/A <id>shannon</id>
6N/A <name>Bill Shannon</name>
6N/A <organization>Sun Microsystems, Inc.</organization>
6N/A <roles>
6N/A <role>lead</role>
6N/A </roles>
6N/A </developer>
6N/A </developers>
6N/A
6N/A <modules>
6N/A <module>mail</module>
6N/A <module>mailapi</module>
6N/A <module>smtp</module>
6N/A <module>imap</module>
6N/A <module>pop3</module>
6N/A <module>dsn</module>
6N/A </modules>
6N/A
63N/A <profiles>
63N/A <!--
63N/A This profile contains modules that should only be built
63N/A but not installed or deployed.
63N/A -->
63N/A <profile>
63N/A <id>build-only</id>
63N/A <modules>
63N/A <module>mbox</module>
63N/A <module>demo</module>
63N/A <module>client</module>
63N/A <module>servlet</module>
63N/A <module>webapp</module>
63N/A <module>taglib</module>
168N/A <module>logging</module>
275N/A <module>outlook</module>
63N/A <module>javadoc</module>
63N/A </modules>
63N/A <activation>
63N/A <activeByDefault>true</activeByDefault>
63N/A </activation>
63N/A </profile>
63N/A
63N/A <!--
63N/A Activating this profile manually for deployment causes
63N/A the above profile to be deactivated, which works around
63N/A an apparent bug in maven that prevents me from manually
63N/A deactivating a profile. This profile purposely has none
63N/A of the modules I don't want to be deployed.
63N/A -->
63N/A <profile>
63N/A <id>deploy</id>
288N/A <modules>
288N/A <module>parent-distrib</module>
288N/A </modules>
63N/A </profile>
220N/A
220N/A <!--
220N/A A special profile for compiling with the real JDK 1.4
220N/A compiler, to make sure there are no accidental dependencies
220N/A on JDK 1.5 APIs. Set the property javac.path to the path
220N/A to the JDK 1.4 compiler, e.g.,
220N/A "mvn -P1.4 -Djavac.path=/opt/jdk1.4/bin/javac".
220N/A -->
220N/A <profile>
220N/A <id>1.4</id>
220N/A <build>
220N/A <plugins>
220N/A <plugin>
220N/A <artifactId>maven-compiler-plugin</artifactId>
220N/A <executions>
220N/A <execution>
220N/A <id>default-compile</id>
220N/A <configuration>
220N/A <fork>true</fork>
220N/A <executable>${javac.path}</executable>
220N/A <compilerVersion>1.4</compilerVersion>
220N/A <source>1.4</source>
220N/A <target>1.4</target>
253N/A <!-- these classes depend on JDK 1.5 APIs -->
220N/A <excludes>
220N/A <exclude>
220N/A com/sun/mail/imap/protocol/IMAPSaslAuthenticator.java
220N/A </exclude>
253N/A <exclude>
253N/A com/sun/mail/smtp/SMTPSaslAuthenticator.java
253N/A </exclude>
220N/A </excludes>
220N/A </configuration>
220N/A </execution>
220N/A </executions>
220N/A </plugin>
220N/A </plugins>
220N/A </build>
220N/A </profile>
63N/A </profiles>
63N/A
63N/A <distributionManagement>
63N/A <repository>
63N/A <id>java.net-m2-repository</id>
131N/A <url>java-net:/maven2-repository/trunk/repository/</url>
187N/A <uniqueVersion>false</uniqueVersion>
63N/A </repository>
63N/A </distributionManagement>
63N/A
6N/A <build>
26N/A <defaultGoal>install</defaultGoal>
6N/A <plugins>
44N/A <!--
213N/A Make sure we're using the correct version of maven,
213N/A required to allow us to build JavaMail with JDK 1.4
213N/A and build the tests with JDK 1.5. See the
213N/A maven-compiler-plugin configuration below.
213N/A -->
213N/A <plugin>
213N/A <groupId>org.apache.maven.plugins</groupId>
213N/A <artifactId>maven-enforcer-plugin</artifactId>
222N/A <executions>
222N/A <execution>
222N/A <id>enforce-version</id>
222N/A <goals>
222N/A <goal>enforce</goal>
222N/A </goals>
222N/A <configuration>
222N/A <rules>
222N/A <requireMavenVersion>
222N/A <version>[2.2.1,)</version>
222N/A </requireMavenVersion>
222N/A </rules>
222N/A </configuration>
222N/A </execution>
222N/A </executions>
213N/A </plugin>
213N/A
213N/A <!--
44N/A This plugin is reponsible for packaging artifacts
44N/A as OSGi bundles. Please refer to
44N/A http://felix.apache.org/site/maven-bundle-plugin-bnd.html
44N/A for more information about how to use this plugin.
44N/A -->
44N/A <plugin>
44N/A <groupId>org.apache.felix</groupId>
44N/A <artifactId>maven-bundle-plugin</artifactId>
44N/A <configuration>
44N/A <instructions>
44N/A <Export-Package>
44N/A ${mail.packages.export}
44N/A </Export-Package>
191N/A <Import-Package>
191N/A ${mail.packages.import}
191N/A </Import-Package>
44N/A <Private-Package>
44N/A ${mail.packages.private}
44N/A </Private-Package>
206N/A <DynamicImport-Package>
206N/A *
206N/A </DynamicImport-Package>
44N/A </instructions>
44N/A </configuration>
44N/A <!--
44N/A Since we don't change the packaging type to bundle, we
44N/A need to configure the plugin to execute the manifest goal
44N/A during the process-classes phase of the build life cycle.
44N/A -->
44N/A <executions>
44N/A <execution>
44N/A <id>osgi-manifest</id>
44N/A <phase>process-classes</phase>
44N/A <goals>
44N/A <goal>manifest</goal>
44N/A </goals>
44N/A </execution>
44N/A </executions>
44N/A </plugin>
194N/A
194N/A <!--
194N/A Since we don't want a qualifier like b05 or SNAPSHOT to
194N/A appear in the OSGi package version attribute, we use
194N/A the following plugin to populate a project property
194N/A with an OSGi version that is equivalent to the maven
194N/A version without the qualifier.
194N/A -->
194N/A <plugin>
194N/A <groupId>com.sun.enterprise</groupId>
194N/A <artifactId>osgiversion-maven-plugin</artifactId>
194N/A <version>${hk2.plugin.version}</version>
194N/A <configuration>
194N/A <dropVersionComponent>qualifier</dropVersionComponent>
194N/A <versionPropertyName>mail.osgiversion</versionPropertyName>
194N/A </configuration>
194N/A <executions>
194N/A <execution>
194N/A <id>compute-osgi-version</id>
194N/A <goals>
194N/A <goal>compute-osgi-version</goal>
194N/A </goals>
194N/A </execution>
194N/A </executions>
194N/A </plugin>
194N/A
213N/A <!--
213N/A Use the 1.4 compiler for JavaMail itself, but use the
213N/A 1.5 compiler for the test classes, so we can use JUnit 4.
213N/A -->
6N/A <plugin>
6N/A <artifactId>maven-compiler-plugin</artifactId>
213N/A <executions>
213N/A <execution>
213N/A <id>default-compile</id>
213N/A <configuration>
213N/A <source>1.4</source>
213N/A <target>1.4</target>
213N/A </configuration>
213N/A </execution>
213N/A <execution>
213N/A <id>default-testCompile</id>
213N/A <configuration>
213N/A <source>1.5</source>
213N/A <target>1.5</target>
213N/A </configuration>
213N/A </execution>
213N/A </executions>
6N/A </plugin>
6N/A
6N/A <plugin>
15N/A <artifactId>maven-jar-plugin</artifactId>
15N/A <!-- need at least this version to make excludes work -->
15N/A <configuration>
15N/A <finalName>${project.artifactId}</finalName>
15N/A <archive>
44N/A <!--
44N/A Configure the maven-jar-plugin to pick up
44N/A META-INF/MANIFEST.MF that's generated by
44N/A the maven-bundle-plugin.
44N/A -->
44N/A <manifestFile>
44N/A ${project.build.outputDirectory}/META-INF/MANIFEST.MF
44N/A </manifestFile>
15N/A <manifestEntries>
15N/A <Extension-Name>
15N/A ${mail.extensionName}
15N/A </Extension-Name>
15N/A <Specification-Title>
15N/A ${mail.specificationTitle}
15N/A </Specification-Title>
15N/A <Specification-Version>
15N/A ${mail.spec.version}</Specification-Version>
15N/A <Specification-Vendor>
15N/A ${project.organization.name}
15N/A </Specification-Vendor>
15N/A <Implementation-Title>
15N/A ${mail.implementationTitle}
15N/A </Implementation-Title>
15N/A <Implementation-Version>
15N/A ${project.version}
15N/A </Implementation-Version>
15N/A <Implementation-Vendor>
15N/A ${project.organization.name}
15N/A </Implementation-Vendor>
15N/A <Implementation-Vendor-Id>
15N/A com.sun
15N/A </Implementation-Vendor-Id>
190N/A <Probe-Provider-XML-File-Names>
190N/A ${mail.probeFile}
190N/A </Probe-Provider-XML-File-Names>
15N/A </manifestEntries>
15N/A </archive>
15N/A <excludes>
15N/A <exclude>**/*.java</exclude>
15N/A </excludes>
15N/A </configuration>
6N/A </plugin>
6N/A
6N/A <!--
6N/A This is the rule that creates the zip file for distribution.
6N/A -->
6N/A <plugin>
6N/A <artifactId>maven-assembly-plugin</artifactId>
6N/A <inherited>false</inherited>
6N/A <!--
6N/A I'd like this to be run as part of the
6N/A package phase, but that doesn't work.
6N/A Have to run it explicitly as:
6N/A
6N/A mvn package assembly:assembly
6N/A
6N/A <executions>
6N/A <execution>
6N/A <phase>package</phase>
6N/A <goals>
6N/A <goal>assembly</goal>
6N/A </goals>
6N/A -->
6N/A <configuration>
121N/A <finalName>javamail${mail.zipversion}</finalName>
6N/A <descriptors>
6N/A <descriptor>assembly.xml</descriptor>
6N/A </descriptors>
6N/A </configuration>
6N/A <!--
6N/A </execution>
6N/A </executions>
6N/A -->
6N/A </plugin>
63N/A
63N/A<!-- not used
63N/A <plugin>
63N/A <artifactId>maven-release-plugin</artifactId>
63N/A <configuration>
63N/A <arguments>-P deploy</arguments>
63N/A </configuration>
63N/A </plugin>
63N/A-->
6N/A </plugins>
63N/A
164N/A <pluginManagement>
164N/A <plugins>
164N/A <plugin>
164N/A <!--
164N/A By default, disable the FindBugs plugin for all modules.
164N/A It's enabled in the "mail" module, which is the only
164N/A module where we actually want to run it.
164N/A -->
164N/A <groupId>org.codehaus.mojo</groupId>
164N/A <artifactId>findbugs-maven-plugin</artifactId>
170N/A <version>RELEASE</version>
164N/A <configuration>
164N/A <skip>true</skip>
164N/A </configuration>
164N/A </plugin>
164N/A </plugins>
164N/A </pluginManagement>
164N/A
63N/A <extensions>
63N/A <extension>
63N/A <groupId>org.jvnet.wagon-svn</groupId>
63N/A <artifactId>wagon-svn</artifactId>
63N/A <!--
63N/A Following should be:
63N/A <version>RELEASE</version>
63N/A but Kohsuke says it doesn't work and to replace
63N/A it with the actual version number.
63N/A -->
63N/A <version>1.8</version>
63N/A </extension>
63N/A </extensions>
6N/A </build>
6N/A
32N/A <dependencyManagement>
32N/A <dependencies>
32N/A <dependency>
32N/A <groupId>javax.mail</groupId>
32N/A <artifactId>mail</artifactId>
32N/A <version>${mail.version}</version>
32N/A </dependency>
32N/A <dependency>
32N/A <groupId>com.sun.mail</groupId>
32N/A <artifactId>dsn</artifactId>
32N/A <version>${mail.version}</version>
32N/A </dependency>
32N/A <dependency>
32N/A <groupId>com.sun.mail</groupId>
32N/A <artifactId>mbox</artifactId>
32N/A <version>${mail.version}</version>
32N/A </dependency>
32N/A <dependency>
32N/A <groupId>com.sun.mail</groupId>
32N/A <artifactId>taglib</artifactId>
32N/A <version>${mail.version}</version>
32N/A </dependency>
32N/A <dependency>
32N/A <groupId>javax.servlet</groupId>
32N/A <artifactId>servlet-api</artifactId>
32N/A <version>2.5</version>
32N/A </dependency>
32N/A <dependency>
32N/A <groupId>javax.servlet.jsp</groupId>
32N/A <artifactId>jsp-api</artifactId>
32N/A <version>2.1</version>
32N/A </dependency>
32N/A </dependencies>
32N/A </dependencyManagement>
32N/A
6N/A <dependencies>
6N/A <dependency>
6N/A <groupId>javax.activation</groupId>
6N/A <artifactId>activation</artifactId>
6N/A <version>${activation-api.version}</version>
6N/A </dependency>
6N/A </dependencies>
6N/A
6N/A <repositories>
63N/A <repository>
63N/A <id>maven2-repository.dev.java.net</id>
63N/A <name>Java.net Repository for Maven</name>
63N/A <url>http://download.java.net/maven/2/</url>
63N/A </repository>
6N/A </repositories>
199N/A
199N/A <pluginRepositories>
199N/A <pluginRepository>
199N/A <id>glassfish-repo-archive</id>
199N/A <name>M2 repo for GlassFish project specific artifacts</name>
199N/A <url>http://download.java.net/maven/glassfish/</url>
199N/A </pluginRepository>
199N/A </pluginRepositories>
6N/A</project>