这里主要介绍的就是项目依赖的适用范围
例如
<dependencies>
<dependency>
<groupId>junitgroupId>
<artifactId>junitartifactId>
<version>4.11version>
<scope>testscope>
dependency>
dependencies>
依赖使用的范围:
| compile | test | provided | |
|---|---|---|---|
| 对主程序是否有效 | 是 | 否 | 是 |
| 对测试程序是否有效 | 是 | 是 | 是 |
| 是否参与打包 | 是 | 否 | 否 |
| 是否参与部署 | 是 | 否 | 否 |
定义全局变量:
<properties>
<spring.version>4.3.10.RELEASEspring.version>
properties>
引用全局变量:
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-contextartifactId>
<version>${spring.version}version>
dependency>
Maven 系统采用的变量:
<properties>
<maven.compiler.source>1.8maven.compiler.source> 源码编译 jdk 版本
<maven.compiler.target>1.8maven.compiler.target> 运行代码的 jdk 版本
<project.build.sourceEncoding>UTF-8project.build.sourceEncoding> 项目构建使用的编码,避免中文乱
码
<project.reporting.outputEncoding>UTF-8project.reporting.outputEncoding> 生成报告的编码
properties>
src/main/java 和 src/test/java 这两个目录中的所有*.java 文件会分别在 comile 和 test-comiple 阶段被编译,编译结果分别放到了 target/classes 和 targe/test-classes 目录中,但是这两个目录中的其他文件都会被忽略掉,如果需要把 src 目录下的文件包放到 target/classes 目录,作为输出的 jar 一部分。需要指定资源文件位置。以下内容放到
标签中。
<build>
<resources>
<resource>
<directory>src/main/javadirectory>
<includes>
<include>**/*.propertiesinclude>
<include>**/*.xmlinclude>
includes>
<!—filtering 选项 false 不启用过滤器, *.property 已经起到过滤的作用了 -->
<filtering>falsefiltering>
resource>
resources>
build>