Skip to main content

06 Maven

Maven

Maven是一个流行的Java项目管理和构建自动化工具。

Maven中有多个仓库,用来存储和管理jar包。仓库分为本地仓库、远程仓库和中央仓库,查找jar包时会按顺序逐层查找。

安装

在官网(https://maven.apache.org/download.cgi)下载对应安装包(我的为apache-maven-3.9.9-bin.zip)。

将文件夹解压后,首先配置环境变量。将解压后的目录配置为系统环境变量MAVEN_HOME(变量名),再将bin目录(%MAVEN_HOME%\bin)配置为PATH环境变量。然后,在conf文件夹下的settings.xml文件增加 <localRepository>D:\Dev Tools\apache-maven-3.9.9\mvn_repo</localRepository> ,再将 <mirrors> 标签中内容改为

<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>

Maven需要Java才能使用。Java在下载后首先配置JAVA_HOME环境变量,为相应的下载文件夹;然后在path中添加%JAVA_HOME%\bin。配置后,要将这一环境变量移动到最上面,用 java -version 检查配置是否成功,这是Maven应该已经可以使用。最后按需配置classPath。

然后要在IDEA中配置Maven环境,按视频对应操作即可。

坐标

Maven中的坐标是资源(即jar包)的唯一表示,由groupId、artifactId和version三个部分组成,分别为项目隶属组织名称(通常为域名反写)、当前项目名称和版本号。

版本分为快照版和发行版。

单元测试

目前,JUnit是最流行的单元测试框架之一。使用JUnit,首先要在pom.xml文件中引入依赖。

<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>5.9.1</version>
</dependency>
</dependencies>

在JUnit中,单元测试类名规范为XxxTest,并要求测试方法类型必须为 public void

import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

public class FirstTest {

@Test
public void test() {
Assertions.assertTrue(true);
}
}

除了Test外,还有一些常见注解。

注释说明
@ParameterizedTest可以让单个测试运行多次,每次参数不同
@ValueSource参数化测试的参数来源
@BeforeEach在每个测试方法执行前执行一次
@AfterEach在每个测试方法执行后执行一次
@BeforeAll在所有测试方法执行前执行一次
AfterAll在所有测试方法执行后执行一次

依赖范围

依赖在默认情况下可以在任何地方使用。可以用 <scope></scope> 限制范围。

默认情况下的范围为compile,可以设置为test、provided和runtime。test情况下只能在测试下使用依赖,provided情况下依赖不会被打包,runtime情况下不能在主程序中使用。