<?xml version="1.0" encoding="UTF-8"?>
<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>org.sonatype.oss</groupId>
		<artifactId>oss-parent</artifactId>
		<version>7</version>
	</parent>
	<groupId>io.springside</groupId>
	<artifactId>springside-utils</artifactId>
	<version>5.0.0-RC1</version>
	<packaging>jar</packaging>
	<name>Springside :: Module :: Utils</name>

	<description>SpringSide is a Spring Framework based JavaEE application reference architecture. </description>
	<url>http://www.github.com/springside/springside4</url>
	<inceptionYear>2006-2017</inceptionYear>

	<properties>
		<guava.version>20.0</guava.version>
		<commons-lang3.version>3.5</commons-lang3.version>
		<slf4j.version>1.7.22</slf4j.version>
		<orika.version>1.5.0</orika.version>
		<jackson.version>2.8.6</jackson.version>
		<cglib.version>3.2.4</cglib.version>
		<commons-collections.version>4.1</commons-collections.version>
		<logback.version>1.1.8</logback.version>
		<junit.version>4.12</junit.version>
		<assertj.version>2.6.0</assertj.version>
		<mockito.version>1.10.19</mockito.version>

		<!-- Plugin的属性 -->
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.7</java.version>
		<maven.compiler.source>${java.version}</maven.compiler.source>
		<maven.compiler.target>${java.version}</maven.compiler.target>
	</properties>

	<dependencies>
		<!-- UTILS begin -->
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>${guava.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>${commons-lang3.version}</version>
		</dependency>
		<!-- UTILS end -->

		<!-- LOGGING begin -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<!-- LOGGING end -->

		<!-- OPTIONAL begin -->
		<!-- for JsonMapper -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>${jackson.version}</version>
			<optional>true</optional>
		</dependency>

		<!-- for ObjectMapper -->
		<dependency>
			<groupId>ma.glasnost.orika</groupId>
			<artifactId>orika-core</artifactId>
			<version>${orika.version}</version>
			<optional>true</optional>
		</dependency>

		<!-- for FastInvoker -->
		<dependency>
			<groupId>cglib</groupId>
			<artifactId>cglib</artifactId>
			<version>${cglib.version}</version>
			<optional>true</optional>
		</dependency>

		<!-- for CommonCollections -->
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-collections4</artifactId>
			<version>${commons-collections.version}</version>
			<optional>true</optional>
		</dependency>
		<!-- OPTIONAL end -->

		<!-- TEST begin -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.assertj</groupId>
			<artifactId>assertj-core</artifactId>
			<version>${assertj.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>${mockito.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>${logback.version}</version>
			<scope>test</scope>
		</dependency>

		<!-- only for XMLMapper test -->
		<dependency>
			<groupId>dom4j</groupId>
			<artifactId>dom4j</artifactId>
			<version>1.6.1</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>jaxen</groupId>
			<artifactId>jaxen</artifactId>
			<version>1.1.6</version>
			<scope>test</scope>
		</dependency>
		<!-- TEST end -->
	</dependencies>

	<build>
		<plugins>
			<!-- source attach plugin -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.0.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- 打包测试用的jar包，classfier为tests -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>3.0.2</version>
				<executions>
					<execution>
						<goals>
							<goal>test-jar</goal>
						</goals>
						<configuration>
							<excludes>
								<exclude>org/springside/modules/test/**/*Test.class</exclude>
							</excludes>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>2.10.3</version>
				<configuration>
					<failOnError>false</failOnError>
					<quiet>true</quiet>
				</configuration>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>1.6</version>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<distributionManagement>
		<snapshotRepository>
			<id>ss-sonatype-snapshots</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
		<repository>
			<id>ss-sonatype-releases</id>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
		</repository>
	</distributionManagement>

	<repositories>
		<repository>
			<id>sonatype</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
			<releases>
				<enabled>false</enabled>
			</releases>
		</repository>
	</repositories>

	<scm>
		<url>https://github.com/springside/springside4</url>
		<connection>scm:git:git://github.com/springside/springside4.git</connection>
		<developerConnection>scm:git:ssh://git@github.com:springside/springside4.git</developerConnection>
	</scm>

	<developers>
		<developer>
			<id>calvin</id>
			<name>Calvin Xiao</name>
			<email>calvinxiu at vipshop.com</email>
			<roles>
				<role>Project leader</role>
			</roles>
			<timezone>+8</timezone>
		</developer>
	</developers>

	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0</url>
		</license>
	</licenses>

	<issueManagement>
		<system>Github</system>
		<url>https://github.com/springside/springside4/issues</url>
	</issueManagement>
</project>