Maven配置,Idea集成Maven_依赖引入,Idea生成单元测试

Maven官方网址:传送门

一、Maven下载以及配置

.在下载好解压之后需要找到其位置,小小的配置一下:

  1. 新建仓库文件夹,我这里将其命名为maven_repo
  2. 配置settings.xml

进入conf目录下,找到settings.xml文件,用记事本打开,或者其他软件打开

找到mirror这个标签,进行如下配置,链接阿里云私服

bash 复制代码
	<mirror>  
		<id>alimaven</id>  
		<name>aliyun maven</name>  
		<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
		<mirrorOf>central</mirrorOf>          
	</mirror>

本地仓库查找:Maven 首先会在本地仓库(~/.m2/repository)中查找依赖。

私服查找(如果配置):

如果本地没有,且项目中配置了私服(如 Nexus、Artifactory),Maven 会按照 settings.xml 或 pom.xml 中配置的私服地址去查找。

私服通常会代理中央仓库(或其他远程仓库),但私服的行为取决于其配置:

如果私服有缓存(之前有人下载过该依赖),则直接返回。

如果私服未缓存,且配置了中央仓库代理(如 repo.maven.apache.org),私服会从中央仓库下载并缓存到私服,再返回给本地。

中央仓库(默认行为):

如果没有配置私服,Maven 会直接去中央仓库下载(除非显式禁用了默认中央仓库配置)。

下来找到这个标签,在里面写本地仓库的绝对地址

  1. 配置系统环境变量

win11系统:右键桌面的此电脑,点击属性,找到高级系统设置

点击环境变量,在系统环境变量下操作,单击新建

根据自己的Maven路径做出如下设置:

新建完成,点击Path这一变量,新建变量如下:

bash 复制代码
%MAVEN_HOME%\bin

这样就配置的差不多了。测试一下

win+r键,输入cmd
mvn -v

bash 复制代码
mvn help:system

这一步可能需要花费一点时间,因为Maven会自动下载缺省的或者更新的各种配置文件和依赖到我们设置的本地仓库中

出现

即为配置成功。

二、Idea集成maven

点击File,选择Close Project

点击Customize

选择All settings

根据自己的Maven路径配置:

从上到下分别为:

  1. Maven文件夹的路径
  2. Maven setting.xml配置文件的路径
  3. Maven本地仓库的路径

    在Runner中选择自己的JDK

这里同样

之后打开应用保存,打开 Idea

创建新项目:选择Maven构建项目

点击create

创建之后是这个样子,在资源管理中,src下的main目录下的Java目录存的是我们的核心代码,Test目录写的是我们测试的代码(后面会展示),写个Hello world来测试一下,能不能正常输出

ok,没问题,而且右边资源管理出现了target目录

target文件夹是用来存放项目构建后的文件和目录、jar包、war包、编译的class文件

下来我们来导入依赖;

在右边的资源管理中,点击pom.xml

输入标签,我们可以在这个标签中引入依赖,下来我们进入依赖的网站mvnrepository(PS:人机过不去的可以尝试切换手机热点)

打开是这样的,可以在上方的搜索框输入我们想要的依赖。

这里例如:Spring-context

选择版本,这里我选择的是6.1.4的版本,复制红色框的内容,之后回到Idea

直接粘贴在这里标签里面

在本地仓库中没有的话就会显示红色,点击Maven的刷新,Maven就会从私服中下载到这个依赖存入到本地仓库

例如:我的电脑中没有6.1.6这个版本,就会变为红色,此时点击刷新

就会自动下载

之后就会变为正常的颜色

三、Idea生成单元测试

测试代码如下:

java 复制代码
package d1;

import java.time.LocalDate;
import java.time.Period;
import java.time.format.DateTimeFormatter;

public class UserService {

    /**
     * 给定一个身份证号, 计算出该用户的年龄
     * @param idCard 身份证号
     */
    public Integer getAge(String idCard){
        if (idCard == null || idCard.length() != 18) {
            throw new IllegalArgumentException("无效的身份证号码");
        }
        String birthday = idCard.substring(6, 14);
        LocalDate parse = LocalDate.parse(birthday, DateTimeFormatter.ofPattern("yyyyMMdd"));
        return Period.between(parse, LocalDate.now()).getYears();
    }

    /**
     * 给定一个身份证号, 计算出该用户的性别
     * @param idCard 身份证号
     */
    public String getGender(String idCard){
        if (idCard == null || idCard.length() != 18) {
            throw new IllegalArgumentException("无效的身份证号码");
        }
        return Integer.parseInt(idCard.substring(16,17)) % 2 == 1 ? "男" : "女";
    }

}

规范测试文件一般以:XXXTest的格式

引入如下依赖;

bash 复制代码
		<dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>5.9.1</version>
        </dependency>

在测试文件中:

java 复制代码
import d1.UserService;
import org.junit.jupiter.api.Test;

public class UserServiceTest {
  @Test
    public void testGetAge() {
    UserService userService = new UserService();
    Integer age = userService.getAge("110101199001011234");
    System.out.println(age);
  }


}

这里规定测试必须以public void开头,必须遵守,记得写@Test注解

点击进行测试


Test passed 1 证明过了一个单元测试 此人今年35岁

相关推荐
程序员三藏1 小时前
软件测试之单元测试
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
hrrrrb3 小时前
【Spring Boot 快速入门】六、配置文件
java·spring boot·intellij-idea
超级小忍6 小时前
Maven 常用命令详解
java·开发语言·maven
李少兄8 小时前
解决IntelliJ IDEA 项目名称后带中括号问题(模块名不一致)
java·ide·intellij-idea
干了这杯柠檬多8 小时前
使用maven-shade-plugin解决es跨版本冲突
java·elasticsearch·maven
YY_TJJ1 天前
8.4 Java Web(Maven P50-P57)
java·开发语言·maven
刘大辉在路上1 天前
IntelliJ IDEA开发编辑器摸鱼看股票数据
java·编辑器·intellij-idea
蜀山雪松2 天前
Windows中Idea或者其他开发工具如何使用Google Sans Code - 码农开源等宽字体
java·ide·intellij-idea