您的位置:首页 > 其它

我最常用的maven pom.xml

2017-12-25 17:34 267 查看
springboot的pom.xml

<?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"> <!--pom文件,全名叫Project Object Model。就是这个pom.xml文件含有project的相关信息-->
<modelVersion>4.0.0</modelVersion>

<groupId>com.example</groupId><!--唯一的一个标识,比如一个组织或者一个项目的名字,基本上三段-->
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging><!--提供组件的类型,比如使用时打包成一个jar或者是一个war包,默认为打成jar包-->

<name>demo</name>
<description>Demo project for Spring Boot</description><!--可不写-->

<!--parent 继承 这样项目就可以用springboot-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

<!--Maven属性,在POM的其他地方使用${属性名}的方式引用该属性
Maven总共有6类属性,内置属性、POM属性、自定义属性、Settings属性、java系统属性和环境变量属性
1.内置属性
两个常用内置属性 ${basedir} 表示项目跟目录,即包含pom.xml文件的目录;${version} 表示项目版本
详见https://www.cnblogs.com/youzhibing/p/5427130.html-->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>

<!--依赖-->
<dependencies>
<dependency><!--Spring Boot的核心启动器,包含了自动配置、日志和YAML-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>

<dependency><!--支持常规的测试依赖,包括JUnit、Hamcrest、Mockito以及spring-test模块-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>

<dependency>
<!--一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去
原理是在发现代码有更改之后,重新启动应用,但是比速度比手动停止后再启动还要更快,更快指的不是节省出来的手工操作的时间。
其深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为 restart ClassLoader
,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart ClassLoader,由于需要加载的类相比较少,所以实现了较快的重启时间(5秒以内)。
由于devtools仅在 Spring milestone repository. 仓库中提供,而默认的仓库版本是1.2.5.RELEASE,所以需要在POM.XML 文件中配置仓库地址-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>

<dependency>
<!--pojo构造器 常用注解 @Data @AllArgsConstructor @NoArgsConstructor idea需安装 lombok plugin-->
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.14</version>
<scope>provided</scope>
</dependency>

<dependency><!--web应用-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

<dependency><!--web应用上下文支持-->
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>

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

<!--工具类包 begin-->
<dependency><!--Apache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大-->
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency><!--Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展-->
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.2</version>
</dependency>
<dependency><!--IO数据流读写功能。-->
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.9</version>
</dependency>
<dependency><!--Apache Commons包中的一个,包含了一些Bean工具类类-->
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.3</version>
</dependency>
<!--工具类包 start-->
</dependencies>

<build>
<!--将静态资源打在包里-->
<!--<resources>-->
<!--<resource>-->
<!--<directory>src/main/java</directory>-->
<!--<includes>-->
<!--<include>com/changfu/business/tpp/util/templates/**.html</include>-->
<!--<include></include>-->
<!--</includes>-->
<!--</resource>-->
<!--<resource>-->
<!--<directory>src/main/resources</directory>-->
<!--</resource>-->
<!--</resources>-->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration><!--配置main方法入口-->
<mainClass>com.changfu.ApiMain</mainClass>
<addResources>true</addResources>

<embeddedLaunchScriptProperties>

</embeddedLaunchScriptProperties>

<executable>true</executable>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>

<url>http://maven.aliyun.com/nexus/content/groups/public/</url>

<!--<repositories>-->
<!--<repository>-->
<!--<id>getui-nexus</id>-->
<!--<url>http://mvn.gt.igexin.com/nexus/content/repositories/releases/</url>-->
<!--</repository>-->
<!--<repository>-->
<!--<id>public</id>-->
<!--<name>Public Repositories</name>-->
<!--<url>http://10.17.13.248:8081/nexus/content/groups/public</url>-->
<!--<snapshots>-->
<!--<enabled>true</enabled>-->
<!--</snapshots>-->
<!--<releases>-->
<!--<enabled>true</enabled>-->
<!--</releases>-->
<!--<layout>default</layout>-->
<!--</repository>-->
<!--<!–<repository>–>-->
<!--<!–<id>spring-releases</id>–>-->
<!--<!–<url>https://repo.spring.io/libs-release</url>–>-->
<!--<!–<
4000
;/repository>–>-->
<!--</repositories>-->

</project>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: