<?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>

	<packaging>pom</packaging>

	<groupId>cn.renlm.plugins</groupId>
	<artifactId>MyPlugin-parent</artifactId>
	<version>2.7.7</version>
	<name>MyPlugin</name>
	<description>Java简化开发套路</description>
	<url>https://github.com/renlm/MyPlugin</url>

	<modules>
		<module>My-Plugin</module>
		<module>MyCrawler</module>
		<module>MyExcel</module>
		<module>MyGenerator</module>
		<module>MyUtil</module>
	</modules>

	<properties>
		<compile.version>11</compile.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<!-- 版本管理 -->
		<hutool.version>5.8.12</hutool.version>
		<bcpkix-jdk15to18.version>1.72</bcpkix-jdk15to18.version>
		<webmagic.version>0.8.0</webmagic.version>
		<selenium-chrome-driver.version>4.5.3</selenium-chrome-driver.version>
		<compiler.version>2.4.1</compiler.version>
		<easyexcel.version>3.2.1</easyexcel.version>
		<xstream.version>1.4.20</xstream.version>
		<mybatis-plus-boot-starter.version>3.5.3.1</mybatis-plus-boot-starter.version>
		<dynamic-datasource-spring-boot-starter.version>3.6.1</dynamic-datasource-spring-boot-starter.version>
		<mybatis-plus-generator.version>3.5.3.1</mybatis-plus-generator.version>
		<mysql-connector-j.version>8.0.31</mysql-connector-j.version>
		<postgresql.version>42.5.1</postgresql.version>
		<freemarker.version>2.3.31</freemarker.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>1.18.24</version>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>1.4.5</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<version>5.9.1</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>cn.hutool</groupId>
				<artifactId>hutool-all</artifactId>
				<version>${hutool.version}</version>
			</dependency>

			<dependency>
				<groupId>org.bouncycastle</groupId>
				<artifactId>bcpkix-jdk15to18</artifactId>
				<version>${bcpkix-jdk15to18.version}</version>
			</dependency>

			<dependency>
				<groupId>us.codecraft</groupId>
				<artifactId>webmagic-core</artifactId>
				<version>${webmagic.version}</version>
			</dependency>

			<dependency>
				<groupId>us.codecraft</groupId>
				<artifactId>webmagic-extension</artifactId>
				<version>${webmagic.version}</version>
			</dependency>

			<dependency>
				<groupId>org.seleniumhq.selenium</groupId>
				<artifactId>selenium-chrome-driver</artifactId>
				<version>${selenium-chrome-driver.version}</version>
			</dependency>

			<dependency>
				<groupId>net.openhft</groupId>
				<artifactId>compiler</artifactId>
				<version>${compiler.version}</version>
			</dependency>

			<dependency>
				<groupId>com.alibaba</groupId>
				<artifactId>easyexcel</artifactId>
				<version>${easyexcel.version}</version>
			</dependency>

			<dependency>
				<groupId>com.thoughtworks.xstream</groupId>
				<artifactId>xstream</artifactId>
				<version>${xstream.version}</version>
			</dependency>

			<dependency>
				<groupId>com.baomidou</groupId>
				<artifactId>mybatis-plus-boot-starter</artifactId>
				<version>${mybatis-plus-boot-starter.version}</version>
			</dependency>

			<dependency>
				<groupId>com.baomidou</groupId>
				<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
				<version>${dynamic-datasource-spring-boot-starter.version}</version>
			</dependency>

			<dependency>
				<groupId>com.baomidou</groupId>
				<artifactId>mybatis-plus-generator</artifactId>
				<version>${mybatis-plus-generator.version}</version>
			</dependency>

			<dependency>
				<groupId>com.mysql</groupId>
				<artifactId>mysql-connector-j</artifactId>
				<version>${mysql-connector-j.version}</version>
			</dependency>

			<dependency>
				<groupId>org.postgresql</groupId>
				<artifactId>postgresql</artifactId>
				<version>${postgresql.version}</version>
			</dependency>

			<dependency>
				<groupId>org.freemarker</groupId>
				<artifactId>freemarker</artifactId>
				<version>${freemarker.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<issueManagement>
		<system>Github Issue</system>
		<url>https://github.com/renlm/MyPlugin/issues</url>
	</issueManagement>

	<licenses>
		<license>
			<name>Mulan Permissive Software License，Version 2 (Mulan PSL v2)</name>
			<url>http://license.coscl.org.cn/MulanPSL2</url>
		</license>
	</licenses>

	<developers>
		<developer>
			<name>renlm</name>
			<email>renlm@21cn.com</email>
		</developer>
	</developers>

	<scm>
		<connection>scm:git@github.com:renlm/MyPlugin.git</connection>
		<developerConnection>scm:git@github.com:renlm/MyPlugin.git</developerConnection>
		<url>git@github.com:renlm/MyPlugin.git</url>
	</scm>

	<build>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
			</resource>
			<resource>
				<directory>${project.basedir}</directory>
				<includes>
					<include>LICENSE.txt</include>
					<include>NOTICE.txt</include>
				</includes>
				<targetPath>META-INF</targetPath>
			</resource>
		</resources>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>versions-maven-plugin</artifactId>
					<version>2.14.2</version>
					<configuration>
						<generateBackupPoms>false</generateBackupPoms>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>versions-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.10.1</version>
				<configuration>
					<source>${compile.version}</source>
					<target>${compile.version}</target>
				</configuration>
			</plugin>
			<!-- Javadoc -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.4.1</version>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<phase>package</phase>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- Source -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.2.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<phase>package</phase>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- License Header -->
			<plugin>
				<groupId>com.mycila</groupId>
				<artifactId>license-maven-plugin</artifactId>
				<version>4.1</version>
				<configuration>
					<licenseSets>
						<licenseSet>
							<multi>
								<header>LICENSE-header.txt</header>
							</multi>
							<excludes>
								<exclude>**/LICENSE.txt</exclude>
								<exclude>**/LICENSE-header.txt</exclude>
								<exclude>**/NOTICE.txt</exclude>
								<exclude>**/README.md</exclude>
								<exclude>src/test/java/**</exclude>
								<exclude>src/test/resources/**</exclude>
								<exclude>src/main/resources/**</exclude>
							</excludes>
						</licenseSet>
					</licenseSets>
				</configuration>
				<executions>
					<execution>
						<id>license-format</id>
						<phase>prepare-package</phase>
						<goals>
							<goal>format</goal>
						</goals>
					</execution>
					<execution>
						<id>license-remove</id>
						<phase>package</phase>
						<goals>
							<goal>remove</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- Gpg Signature -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>3.0.1</version>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<!-- mvn versions:set -DnewVersion=2.7.7 -->
	<!-- mvn versions:set -DnewVersion=2.7.7-SNAPSHOT -->
	<!-- mvn clean deploy -Dmaven.test.skip=true -P profileId -->
	<profiles>
		<profile>
			<id>dev</id>
			<distributionManagement>
				<snapshotRepository>
					<id>maven-public</id>
					<url>https://nexus.renlm.cn/content/repositories/snapshots/</url>
				</snapshotRepository>
				<repository>
					<id>maven-public</id>
					<url>https://nexus.renlm.cn/content/repositories/releases/</url>
				</repository>
			</distributionManagement>
		</profile>
		<profile>
			<id>release</id>
			<distributionManagement>
				<snapshotRepository>
					<id>sonatype</id>
					<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
				</snapshotRepository>
				<repository>
					<id>sonatype</id>
					<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
				</repository>
			</distributionManagement>
			<build>
				<plugins>
					<plugin>
						<groupId>org.sonatype.plugins</groupId>
						<artifactId>nexus-staging-maven-plugin</artifactId>
						<version>1.6.13</version>
						<extensions>true</extensions>
						<configuration>
							<serverId>sonatype</serverId>
							<nexusUrl>https://oss.sonatype.org/</nexusUrl>
							<autoReleaseAfterClose>true</autoReleaseAfterClose>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

	<repositories>
		<repository>
			<id>huaweicloud</id>
			<name>huawei maven</name>
			<url>https://mirrors.huaweicloud.com/repository/maven</url>
		</repository>
	</repositories>

	<pluginRepositories>
		<pluginRepository>
			<id>huaweicloud</id>
			<name>huawei maven</name>
			<url>https://mirrors.huaweicloud.com/repository/maven</url>
		</pluginRepository>
	</pluginRepositories>
</project>