<?xml version="1.0"?>
<project
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
	xmlns="http://maven.apache.org/POM/4.0.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>mbap</groupId>
		<artifactId>mbap-parent</artifactId>
		<version>2.7.8</version>
	</parent>
	<artifactId>mbap-mybatis</artifactId>
	<name>mbap-mybatis</name>
	<version>2.0</version>
	<properties>
		<nexus.server.id>nexus-release</nexus.server.id>
		<nexus.server.ip>192.168.100.27:3691</nexus.server.ip>
		<nexus.release.url>http://${nexus.server.ip}/nexus/content/repositories/mbap</nexus.release.url>
		<timestamp>${maven.build.timestamp}</timestamp>
		<maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
	</properties>
	<dependencies>
		<dependency>
			<groupId>mbap</groupId>
			<artifactId>mbap-log</artifactId>
			<version>v1.V20231213055614</version>
		</dependency>
		<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc6</artifactId>
			<version>11.2.0.3</version>
		</dependency>

	 	<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
	
		<dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
        </dependency>
		<!-- 工具代码 -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>eu.bitwalker</groupId>
			<artifactId>UserAgentUtils</artifactId>
			<version>1.20</version>
		</dependency>
		<dependency>
    		<groupId>javax.persistence</groupId>
    		<artifactId>persistence-api</artifactId>
    		<version>1.0</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter</artifactId>
		</dependency>
		<!-- mysql驱动包 -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.47</version>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>org.junit.vintage</groupId>
					<artifactId>junit-vintage-engine</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid-spring-boot-starter</artifactId>
			<version>1.1.21</version>
		</dependency>
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>25.0-jre</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-data-redis</artifactId>
		</dependency>
		<!-- 添加graylog收集日志的jar -->
		<dependency>
			<groupId>de.siegmar</groupId>
			<artifactId>logback-gelf</artifactId>
			<version>2.0.0</version>
		</dependency>
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjrt</artifactId>
			<version>${aspectj.version}</version>
		</dependency>
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjweaver</artifactId>
			<version>${aspectj.version}</version>
		</dependency>
		<dependency>
			<groupId>com.baomidou</groupId>
			<artifactId>mybatis-plus-boot-starter</artifactId>
			<version>3.5.3</version>
		</dependency>
		<!--添加 代码生成器 依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.3</version>
        </dependency>
        <!--模板引擎 freemarker-->
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.30</version>
        </dependency>
        <!--生成默认模板依赖-->
            <dependency>
                <groupId>org.apache.velocity</groupId>
                <artifactId>velocity-engine-core</artifactId>
                <version>2.3</version>
            </dependency>
        <!-- springdoc -->
		<dependency>
		   <groupId>org.springdoc</groupId>
		   <artifactId>springdoc-openapi-ui</artifactId>
		   <version>1.6.15</version>
		</dependency>

		<dependency>
			<groupId>mbap</groupId>
			<artifactId>tpc-hm</artifactId>
			<version>1.2</version>
		</dependency>
	</dependencies>

	<build>
		<finalName>mbap-mybatis</finalName>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>17</source>
					<target>17</target>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>copy-dependencies</id>
						<phase>package</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/lib</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<!-- resouces拷贝文件插件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>2.6</version>
				<!-- 插件执行的时候申明所有的phase-->
				<executions>
					<execution>
						<id>copy-allatori-config</id>
						<phase>package</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<!-- 拷贝文件的目录，我们最终打包存放的位置是target目录 -->
							<outputDirectory>${basedir}/target</outputDirectory>
							<resources>
								<resource>
									<!-- 这个目录放recsource，是因为resource打包时本身会被copy到target中 -->
									<directory>src/main/resources</directory>
									<includes>
										<!-- Allatori配置文件的文件名 -->
										<include>allatori.xml</include>
									</includes>
									<filtering>true</filtering>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<!-- 执行java程序，这里执行的是混淆的jar包程序，对代码进行混淆 -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>exec-maven-plugin</artifactId>
				<version>1.2.1</version>
				<executions>
					<execution>
						<id>run-allatori</id>
						<phase>package</phase>
						<goals>
							<goal>exec</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<includePluginDependencies>true</includePluginDependencies>
					<executable>java</executable>
					<arguments>
						<argument>-Xms128m</argument>
						<argument>-Xmx512m</argument>
						<argument>-jar</argument>
						<!-- 指定应用的Allatori的jar包的位置，我放在了当前项目的lib文件下-->
						<argument>lib/allatori.jar</argument>
						<!-- 制定代码混淆时的配置文件，我放在了当前项目根路径下-->
						<argument>allatori.xml</argument>
					</arguments>
				</configuration>
			</plugin>

			<!-- 本地安装-->
			<!--			<plugin>-->
			<!--				<groupId>org.apache.maven.plugins</groupId>-->
			<!--				<artifactId>maven-install-plugin</artifactId>-->
			<!--				<version>2.5.2</version>-->
			<!--				<executions>-->
			<!--					<execution>-->
			<!--						<goals>-->
			<!--							<goal>install-file</goal>-->
			<!--						</goals>-->
			<!--						<phase>package</phase>-->
			<!--						<configuration>-->
			<!--							<groupId>${project.groupId}</groupId>-->
			<!--							<artifactId>${project.artifactId}</artifactId>-->
			<!--							<version>${project.version}</version>-->
			<!--							<packaging>jar</packaging>-->
			<!--							<pomFile>${project.basedir}/pom.xml</pomFile>-->
			<!--							<file>${project.build.directory}/${project.build.finalName}-obf.jar</file>-->
			<!--							<javadoc>${project.build.directory}/${project.build.finalName}-obf.jar</javadoc>-->
			<!--						</configuration>-->
			<!--					</execution>-->
			<!--				</executions>-->
			<!--			</plugin>-->

			<!-- 公司仓库安装-->
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-deploy-plugin</artifactId>
							<version>2.8.2</version>
							<executions>
								<execution>
									<goals>
										<goal>deploy-file</goal>
									</goals>
									<phase>package</phase>
									<configuration>
										<repositoryId>${nexus.server.id}</repositoryId>
										<groupId>${project.groupId}</groupId>
										<artifactId>${project.artifactId}</artifactId>
										<version>${project.version}</version>
										<packaging>jar</packaging>
										<pomFile>${project.basedir}/pom.xml</pomFile>
										<file>${project.build.directory}/${project.build.finalName}-obf.jar</file>
										<javadoc>${project.build.directory}/${project.build.finalName}-obf.jar</javadoc>
										<url>${nexus.release.url}</url>
									</configuration>
								</execution>
							</executions>
						</plugin>

		</plugins>
	</build>
</project>