<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>htdi.jfinal</groupId>
	<artifactId>apijson-final</artifactId>
	<packaging>jar</packaging>
	<version>0.0.1-SNAPSHOT</version>
	<name>APIJSON Demo based on JFinal</name>
	<url>http://maven.apache.org</url>
	<dependencies>

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.0</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>com.jfinal</groupId>
			<artifactId>jfinal-undertow</artifactId>
			<version>1.4</version>
		</dependency>

		<dependency>
			<groupId>com.jfinal</groupId>
			<artifactId>jfinal</artifactId>
			<version>3.5</version>
		</dependency>

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.40</version>
		</dependency>

		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>fastjson</artifactId>
			<version>1.2.21</version>
		</dependency>

		<!-- dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> 
			<version>1.2.16</version> </dependency -->
	</dependencies>
	<build>
		<!-- <finalName>helloworld</finalName> -->

		<plugins>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.6.1</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
					<encoding>UTF-8</encoding>
					<!-- java8 保留参数名编译参数 -->
					<compilerArgument>-parameters</compilerArgument>
					<compilerArguments>
						<verbose />
					</compilerArguments>
				</configuration>
			</plugin>

			<!-- 当项目的 web 资源在 src/main/webapp 下时，需要使用 maven-resources-plugin 将 web 
				资源复制到 jar 包中去，注意打包的时候需要配置 engine： me.setBaseTemplatePath("webapp"); me.setToClassPathSourceFactory(); 
				如果 web 资源本身就放在 src/main/resources/webapp 之下，则不需要此插件 -->
			<plugin>
				<artifactId>maven-resources-plugin</artifactId>
				<version>3.1.0</version>
				<executions>
					<execution>
						<id>copy-webapp</id>
						<phase>process-sources</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<encoding>UTF-8</encoding>
							<outputDirectory>${basedir}/target/classes/webapp</outputDirectory>
							<resources>
								<resource>
									<directory>${basedir}/src/main/webapp</directory>
									<includes>
										<!-- <include>**/*.xml</include> -->
										<!-- <include>**/**</include> -->
									</includes>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-shade-plugin</artifactId>
				<version>3.2.1</version>
				<executions>
					<execution>
						<phase>package</phase>
						<goals>
							<goal>shade</goal>
						</goals>
						<configuration>
							<finalName>helloworld</finalName>
							<transformers>
								<transformer
									implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
									<mainClass>apijson.demo.server.AppRunnableConfig</mainClass>
								</transformer>

								<!-- 下面的配置支持排除指定文件打包到 jar 之中，可以用于排除需要修改的配置文件以便于在外部的 config 目录下的 同名配置文件生效，建议使用 
									Prop.appendIfExists(xxx_pro.txt) 在外部放一个非同名配置来覆盖开发环境的配置 则可以不用使用下面的配置，文档参考: 
									http://maven.apache.org/plugins/maven-shade-plugin/examples/resource-transformers.html#DontIncludeResourceTransformer -->
								<transformer
									implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
									<resources>
										<!-- <resource>jfinal-club-config-dev.txt</resource> -->
										<!-- <resource>.PDF</resource> -->
										<!-- <resource>READ.me</resource> -->
									</resources>
								</transformer>
							</transformers>
						</configuration>
					</execution>
				</executions>
			</plugin>

		</plugins>
	</build>
</project>



