<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>
		<relativePath />
	</parent>

	<groupId>com.github.jlgrock.javascript-framework</groupId>
	<artifactId>maven-javascript-framework-plugins</artifactId>
	<version>1.18.2</version>
	<packaging>pom</packaging>
	<name>JavaScript Framework</name>
	<description>A compilation of javascript plugins written for the explicit purpose to work well with the Google Closure Compiler and the Google Closure Library</description>
	<url>https://github.com/jlgrock/JavascriptFramework</url>

	<properties>
		<github.project.name>ClosureJavascriptFramework</github.project.name>
		<closure-compiler.version>v20131014</closure-compiler.version>
		<closure-library.version>99cd91</closure-library.version>
		<maven.version>3.0.1</maven.version>
		<maven.project.version>3.0-alpha-2</maven.project.version>
		<maven-checkstyle-plugin.version>2.9</maven-checkstyle-plugin.version>
		<maven-javadoc-plugin.version>2.8</maven-javadoc-plugin.version>
		<maven-jxr-plugin.version>2.3</maven-jxr-plugin.version>
		<maven-surefire-plugin.version>2.10</maven-surefire-plugin.version>
		<maven-pmd-plugin.version>2.5</maven-pmd-plugin.version>
		<maven-plugin-plugin.version>2.9</maven-plugin-plugin.version>
		<maven-project-info-reports-plugin.version>2.3.1</maven-project-info-reports-plugin.version>
		<maven-site-plugin.version>3.0</maven-site-plugin.version>
		<maven-source-plugin.version>2.1.2</maven-source-plugin.version>
		<maven-war-plugin.version>2.1.1</maven-war-plugin.version>
		<cobertura-maven-plugin.version>2.5.1</cobertura-maven-plugin.version>
		<findbugs-maven-plugin.version>2.3.1</findbugs-maven-plugin.version>
		<maven-plugin-api.version>3.2.3</maven-plugin-api.version>
        <maven-plugin-plugin.version>3.3</maven-plugin-plugin.version>
		<maven-report-plugin-api.version>3.0</maven-report-plugin-api.version>
		<maven-report-plugin-impl.version>2.1</maven-report-plugin-impl.version>
		<junit-maven-plugin.version>4.8.2</junit-maven-plugin.version>
		<plexus.utils.version>2.0.1</plexus.utils.version>
		<log4j.version>1.2.16</log4j.version>
		<maven-source-plugin.version>2.1.2</maven-source-plugin.version>
		<maven.scm.version>1.6</maven.scm.version>
		<scm.plugin.version>1.8.1</scm.plugin.version>
		<git.wagon.version>0.3.1</git.wagon.version>
		<spock.version>0.5</spock.version>
		<gmaven.groovy.version>1.3</gmaven.groovy.version>
		<groovy.version>1.7</groovy.version>
		<release.plugin.version>2.4.2</release.plugin.version>
		<groovy.full.version>1.7.5</groovy.full.version>
		<spock.to.groovy.version>0.4-groovy-1.7</spock.to.groovy.version>
		<target.jdk>1.5</target.jdk>
		<selenium.version>2.40.0</selenium.version>
		<junit.version>4.11</junit.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
		</dependency>
	</dependencies>

	<modules>
		<module>maven-utils</module>
		<module>jspreprocessor-maven-plugin</module>
		<module>source-archive-maven-plugin</module>
		<module>source-overlay-maven-plugin</module>
		<module>jsdependency-maven-plugin</module>
		<module>jsar-maven-plugin</module>
		<module>closure-compiler-maven-plugin</module>
		<module>closure-testing-library</module>
		<module>closure-testing-maven-plugin</module>
		<module>closure-testing-report-maven-plugin</module>
		<module>jsdocs-maven-plugin</module>
	</modules>

	<build>
		<!-- used for the transport of artifact between repositories. This requires 
			git to be installed locally. -->
		<extensions>
			<extension>
				<groupId>org.apache.maven.scm</groupId>
				<artifactId>maven-scm-provider-gitexe</artifactId>
				<version>${maven.scm.version}</version>
			</extension>
			<extension>
				<groupId>org.apache.maven.scm</groupId>
				<artifactId>maven-scm-manager-plexus</artifactId>
				<version>${maven.scm.version}</version>
			</extension>
			<extension>
				<groupId>org.kathrynhuxtable.maven.wagon</groupId>
				<artifactId>wagon-gitsite</artifactId>
				<version>${git.wagon.version}</version>
			</extension>
		</extensions>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-scm-plugin</artifactId>
				<version>${scm.plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-release-plugin</artifactId>
				<version>${release.plugin.version}</version>
				<dependencies>
					<dependency>
						<groupId>org.apache.maven.scm</groupId>
						<artifactId>maven-scm-api</artifactId>
						<version>${scm.plugin.version}</version>
					</dependency>
					<dependency>
						<groupId>org.apache.maven.scm</groupId>
						<artifactId>maven-scm-provider-gitexe</artifactId>
						<version>${scm.plugin.version}</version>
					</dependency>
				</dependencies>
			</plugin>

			<!-- Check Style: Make sure that it matches basic formatting and usage 
				requirements -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<version>${maven-checkstyle-plugin.version}</version>
				<configuration>
					<configLocation>https://raw.github.com/jlgrock/ClosureJavascriptFramework/master/checkstyle.xml</configLocation>
					<failsOnError>true</failsOnError>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>2.3.2</version>
				<configuration>
					<source>1.6</source>
					<target>1.6</target>
				</configuration>
			</plugin>

			<!-- Source Files -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>${maven-source-plugin.version}</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<phase>verify</phase>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Generate Java Doc jar -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>${maven-javadoc-plugin.version}</version>
				<executions>
					<execution>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- To use the plugin goals in your POM or parent POM -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-plugin-plugin</artifactId>
				<version>${maven-plugin-plugin.version}</version>
			</plugin>

			<!-- Site Reporting -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
				<version>${maven-site-plugin.version}</version>
				<configuration>
					<reportPlugins>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-project-info-reports-plugin</artifactId>
							<version>${maven-project-info-reports-plugin.version}</version>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-pmd-plugin</artifactId>
							<version>${maven-pmd-plugin.version}</version>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-javadoc-plugin</artifactId>
							<version>${maven-javadoc-plugin.version}</version>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-jxr-plugin</artifactId>
							<version>${maven-jxr-plugin.version}</version>
							<configuration>
								<aggregate>true</aggregate>
							</configuration>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-surefire-report-plugin</artifactId>
							<version>${maven-surefire-plugin.version}</version>
						</plugin>
						<plugin>
							<groupId>org.codehaus.mojo</groupId>
							<artifactId>cobertura-maven-plugin</artifactId>
							<version>${cobertura-maven-plugin.version}</version>
							<configuration>
								<check>
									<haltOnFailure>false</haltOnFailure>
								</check>
								<formats>
									<format>xml</format>
									<format>html</format>
								</formats>
							</configuration>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-checkstyle-plugin</artifactId>
							<version>${maven-checkstyle-plugin.version}</version>
							<configuration>
								<configLocation>https://raw.github.com/jlgrock/ClosureJavascriptFramework/master/checkstyle.xml</configLocation>
								<failsOnError>false</failsOnError>
							</configuration>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-plugin-plugin</artifactId>
							<version>${maven-plugin-plugin.version}</version>
						</plugin>
					</reportPlugins>
				</configuration>
			</plugin>
		</plugins>
		<!-- To define the plugin version in your parent POM -->
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-plugin-plugin</artifactId>
					<version>${maven-plugin-plugin.version}</version>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

	<issueManagement>
		<url>https://github.com/jlgrock/ClosureJavascriptFramework/issues</url>
		<system>GitHub Issues</system>
	</issueManagement>

	<licenses>
		<license>
			<name>MIT License</name>
			<url>http://www.opensource.org/licenses/mit-license.php</url>
			<distribution>repo</distribution>
		</license>
	</licenses>

	<profiles>
		<profile>
			<id>release-sign-artifacts</id>
			<activation>
				<property>
					<name>performRelease</name>
					<value>true</value>
				</property>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<profile>
			<id>codeQuality</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-surefire-plugin</artifactId>
						<configuration>
							<excludedGroups>integration</excludedGroups>
							<argLine>-XX:MaxPermSize=512M -Xmx512m</argLine>
						</configuration>
                        <version>2.17</version>
					</plugin>
					<!-- COBERTURA: Code Coverage Check -->
					<plugin>
						<groupId>org.codehaus.mojo</groupId>
						<artifactId>cobertura-maven-plugin</artifactId>
                        <version>2.6</version>
						<configuration>
							<check>
								<haltOnFailure>false</haltOnFailure>
							</check>
							<formats>
								<format>html</format>
							</formats>
						</configuration>
						<executions>
							<execution>
								<goals>
									<goal>clean</goal>
									<goal>check</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<!-- FINDBUGS CHECK: Fails build if there are "High" threshold violations -->
					<plugin>
						<groupId>org.codehaus.mojo</groupId>
						<artifactId>findbugs-maven-plugin</artifactId>
						<version>${findbugs-maven-plugin.version}</version>
						<configuration>
							<effort>Max</effort>
							<threshold>High</threshold>
							<xmlOutput>true</xmlOutput>
							<failOnError>true</failOnError>
						</configuration>
						<executions>
							<execution>
								<goals>
									<goal>check</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<!-- PMD CHECK: Fails build if there are "High" priority violations -->
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-pmd-plugin</artifactId>
						<version>${maven-pmd-plugin.version}</version>
						<configuration>
							<targetJdk>${target.jdk}</targetJdk>
							<failurePriority>1</failurePriority>
							<failOnViolation>true</failOnViolation>
							<aggregate>true</aggregate>
						</configuration>
						<executions>
							<execution>
								<goals>
									<goal>check</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.codehaus.sonar</groupId>
						<artifactId>sonar-maven3-plugin</artifactId>
						<version>2.4.1</version>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

	<scm>
		<url>http://github.com/jlgrock/${github.project.name}</url>
		<connection>scm:git:git://github.com/jlgrock/${github.project.name}.git</connection>
		<developerConnection>scm:git:git@github.com:jlgrock/${github.project.name}.git</developerConnection>
		<tag>maven-javascript-framework-plugins-1.18.2</tag>
	</scm>

	<ciManagement>
		<system>Jenkins</system>
	</ciManagement>

	<developers>
		<developer>
			<name>Justin Grant</name>
			<roles>
				<role>Project Lead</role>
				<role>CM</role>
			</roles>
			<timezone>-5</timezone>
			<email>jlgrock@hotmail.com</email>
		</developer>
	</developers>

</project>
