<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>com.github.zengfr.project</groupId>
	<artifactId>superparent</artifactId>
	<url>https://github.com/zengfr</url>
	<name>superparent</name>
	<version>0.0.1</version>
	<packaging>pom</packaging>
	<description>https://github.com/zengfr superparent</description>
	<properties>
		<skipAssembly>true</skipAssembly>
	</properties>
	<build>
		<defaultGoal>compile</defaultGoal>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<includes>
					<include>*.xml</include>
					<include>*.properties</include>
					<include>*.config</include>
					<include>*.txt</include>
					<include>*.cfg</include>
					<include>*.MF</include>
					<include>*.vm</include>
					<include>*.jstl</include>
					<include>*/*.*</include>
				</includes>
			</resource>
		</resources>
		<plugins>
			<!-- <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> 
				</plugin> -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-assembly-plugin</artifactId>
			</plugin>
			<!-- <plugin> <groupId>com.mysema.maven</groupId> <artifactId>apt-maven-plugin</artifactId> 
				</plugin> -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-enforcer-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
			</plugin>
			<!-- plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> 
				</plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> 
				</plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> 
				</plugin -->
		</plugins>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>3.1</version>
					<configuration>
						<source>${jdk.version}</source>
						<target>${jdk.version}</target>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jar-plugin</artifactId>
					<version>3.0.2</version>
					<configuration>
						<archive>
							<addMavenDescriptor>true</addMavenDescriptor>
							<compress>true</compress>
							<forced>true</forced>
							<index>true</index>
							<manifest>
								<!-- mainClass>com.github.zengfr.mlnlp.spider.SpiderApp</mainClass -->
								<addClasspath>true</addClasspath>
								<classpathPrefix>libs/</classpathPrefix>
							</manifest>
							<manifestEntries>
							</manifestEntries>
							<!-- manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile -->
						</archive>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>exec-maven-plugin</artifactId>
					<version>1.2.1</version>
					<executions>
						<execution>
							<goals>
								<goal>java</goal>
							</goals>
						</execution>
					</executions>
					<configuration>
						<mainClass></mainClass>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-dependency-plugin</artifactId>
					<version>2.8</version>
					<executions>
						<execution>
							<id>default-copy</id>
							<phase>prepare-package</phase>
							<goals>
								<goal>copy-dependencies</goal>
							</goals>
							<configuration>
								<outputDirectory>
									${project.build.directory}/libs
								</outputDirectory>
								<!-- excludeTransitive:是否不包含间接依赖包，比如我们依赖A，但是A又依赖了B，我们是否也要把B打进去 默认不打 -->
								<excludeTransitive>false</excludeTransitive>
								<!-- 复制的jar文件去掉版本信息 -->
								<stripVersion>false</stripVersion>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-assembly-plugin</artifactId>
					<version>3.0.0</version>
					<executions>  <!--执行器 mvn assembly:assembly -->
						<execution>
							<id>default-make-zip</id><!--名字任意 -->
							<phase>package</phase><!-- 绑定到package生命周期阶段上 -->
							<goals>
								<goal>single</goal><!-- 只运行一次 -->
							</goals>
							<configuration>
								<descriptors> <!--描述文件路径 -->
									<descriptor>src/main/resources/zip.xml</descriptor>
								</descriptors>
								<skipAssembly>${skipAssembly}</skipAssembly>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>com.mysema.maven</groupId>
					<artifactId>apt-maven-plugin</artifactId>
					<version>1.1.3</version>
					<executions>
						<execution>
							<id>default-gen</id><!-- <phase>process-sources</phase> -->
							<phase>generate-sources</phase>
							<goals>
								<goal>process</goal>
							</goals>
							<configuration>
								<outputDirectory>src/generated-sources/java</outputDirectory>
								<processors>
									<processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
									<processor>com.github.zengfr.project.codegen.EntityAnnotationProcessor</processor>
								</processors>
								<options>
									<querydsl.entityAccessors>true</querydsl.entityAccessors>
									<querydsl.createDefaultVariable>true</querydsl.createDefaultVariable>
								</options>
							</configuration>
						</execution>
					</executions>
				</plugin>

				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-enforcer-plugin</artifactId>
					<version>1.4.1</version>
					<dependencies>
						<dependency>
							<groupId>org.codehaus.mojo</groupId>
							<artifactId>extra-enforcer-rules</artifactId>
							<version>1.1</version>
						</dependency>
					</dependencies>
					<executions>
						<execution>
							<id>default-enforce</id>
							<goals>
								<goal>enforce</goal>
							</goals>
							<phase>validate</phase>
							<configuration>
								<rules>
									<requireMavenVersion>
										<version>3.3.9</version>
									</requireMavenVersion>
									<requireJavaVersion>
										<version>1.8</version>
									</requireJavaVersion>
									<banCircularDependencies />
									<banDuplicateClasses>
										<ignoreClasses>
											<ignoreClass>javax.*</ignoreClass>
											<ignoreClass>org.aspectj.*</ignoreClass>
											<ignoreClass>org.apache.juli.*</ignoreClass>
											<ignoreClass>org.objectweb.asm.*</ignoreClass>
											<ignoreClass>org.apache.commons.logging.*</ignoreClass>
											<ignoreClass>org.xmlpull.*</ignoreClass>
											<ignoreClass>com.zaxxer.hikari.*</ignoreClass>
											<ignoreClass>module-info</ignoreClass>
											<ignoreClass>io.netty.*</ignoreClass>
											<ignoreClass>module-info</ignoreClass>
											<ignoreClass>package-info</ignoreClass>
										</ignoreClasses>
										<findAllDuplicates>true</findAllDuplicates>
									</banDuplicateClasses>
									<bannedDependencies>
										<searchTransitive>true</searchTransitive>
										<excludes>
											<exclude>org.log.*:*</exclude>
											<exclude>*logging.log4j:log4j-api*</exclude>
											<exclude>*slf4j-log4j*</exclude>
											<exclude>*commons-logging*</exclude>
											<exclude>*common*logging*</exclude>
										</excludes>
										<includes>
											<include>org.slf4j:slf4j-api</include>
											<include>*:*-to-slf4j</include>
										</includes>
									</bannedDependencies>
									<dependencyConvergence />
									<banDuplicatePomDependencyVersions>
									</banDuplicatePomDependencyVersions>
									<requireReleaseDeps />
								</rules>
								<fail>true</fail>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-maven-plugin</artifactId>
					<version>2.0.0.M2</version>
				</plugin>

				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>2.10.2</version>
					<configuration>
						<aggregate>true</aggregate>
						<locales>zh_CN</locales>
					</configuration>
					<executions>
						<execution>
							<id>attach-javadocs</id>
							<goals>
								<goal>jar</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<!-- 生成sources源码包的插件 -->
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>3.0.1</version>
					<configuration>
						<attach>true</attach>
					</configuration>
					<executions>
						<execution>
							<phase>package</phase>
							<goals>
								<goal>jar-no-fork</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-site-plugin</artifactId>
					<version>3.3</version>
					<configuration>
						<locales>zh_CN</locales>
					</configuration>
				</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>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-release-plugin</artifactId>
					<version>2.5.3</version>
					<configuration>
						<autoVersionSubmodules>true</autoVersionSubmodules>
						<useReleaseProfile>false</useReleaseProfile>
						<releaseProfiles>release</releaseProfiles>
						<goals>deploy</goals>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.sonatype.plugins</groupId>
					<artifactId>nexus-staging-maven-plugin</artifactId>
					<version>1.6.8</version>
					<extensions>true</extensions>
					<configuration>
						<serverId>ossrh</serverId>
						<nexusUrl>https://oss.sonatype.org/</nexusUrl>
						<autoReleaseAfterClose>false</autoReleaseAfterClose>
					</configuration>
				</plugin>
				<!--This plugin's configuration is used to store Eclipse m2e settings 
					only. It has no influence on the Maven build itself. -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>
											org.codehaus.mojo
										</groupId>
										<artifactId>
											build-helper-maven-plugin
										</artifactId>
										<versionRange>
											[1.12,)
										</versionRange>
										<goals>
											<goal>add-source</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-project-info-reports-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>2.7</version>
			</plugin>
		</plugins>
	</reporting>
	<distributionManagement>
		<snapshotRepository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
		<repository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		</repository>
	</distributionManagement>
	<licenses>
		<license>
			<name>The Apache Software License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
			<distribution>repo</distribution>
		</license>
	</licenses>
	<scm>
		<url>https://github.com/zengfr/</url>
		<connection>git@github.com:zengfr/</connection>
		<developerConnection>https://github.com/zengfr</developerConnection>
	</scm>
	<developers>
		<developer>
			<name>zengfr</name>
			<email>zengfr3000@qq.com</email>
			<url>https://github.com/zengfr</url>
		</developer>
	</developers>
	<profiles>
		<profile>
			<id>release</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.sonatype.plugins</groupId>
						<artifactId>nexus-staging-maven-plugin</artifactId>
						<version>1.6.3</version>
						<extensions>true</extensions>
						<configuration>
							<serverId>ossrh</serverId>
							<nexusUrl>https://oss.sonatype.org/</nexusUrl>
							<autoReleaseAfterClose>false</autoReleaseAfterClose>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-release-plugin</artifactId>
						<version>2.5</version>
						<configuration>
							<autoVersionSubmodules>true</autoVersionSubmodules>
							<useReleaseProfile>false</useReleaseProfile>
							<releaseProfiles>release</releaseProfiles>
							<goals>deploy</goals>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-compiler-plugin</artifactId>
						<version>3.0</version>
						<configuration>
							<source>${jdk.version}</source>
							<target>${jdk.version}</target>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>1.5</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-source-plugin</artifactId>
						<version>2.2.1</version>
						<executions>
							<execution>
								<id>attach-sources</id>
								<goals>
									<goal>jar-no-fork</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>2.9</version>
						<executions>
							<execution>
								<id>attach-javadocs</id>
								<goals>
									<goal>jar</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>
