diff --git "a/57 \351\273\204\346\265\201\346\266\233/20231219 Maven\347\254\224\350\256\260.md" "b/57 \351\273\204\346\265\201\346\266\233/20231219 Maven\347\254\224\350\256\260.md" new file mode 100644 index 0000000000000000000000000000000000000000..7f543fe5869309b19c2ebd8336c6b53769f84f11 --- /dev/null +++ "b/57 \351\273\204\346\265\201\346\266\233/20231219 Maven\347\254\224\350\256\260.md" @@ -0,0 +1,93 @@ +## 笔记 + +### Maven + +```java +Maven是专门用于管理和构建Java项目的工具,它的主要功能有: + +提供了一套标准化的项目结构 + +提供了一套标准化的构建流程(编译,测试,打包,发布……) + +提供了一套依赖管理机制 + + +仓库分类: +本地仓库:自己计算机上的一个目录 + +中央仓库:由Maven团队维护的全球唯一的仓库 + +地址: https://repo1.maven.org/maven2/ + +远程仓库(私服):一般由公司团队搭建的私有仓库,国内镜像也是远程仓库的一种 +当项目中使用坐标引入对应依赖jar包后,首先会查找本地仓库中是否有对应的jar +包: +如果有,则在项目直接引用; + +如果没有,则去中央仓库中下载对应的jar包到本地仓库。 + + +Maven 坐标详解 + +什么是坐标? +Maven 中的坐标是==资源的唯一标识== +使用坐标来定义项目或引入项目中需要的依赖 + +Maven 坐标主要组成 +groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如: +com.mdd) +artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、 +goods-service) +version:定义当前项目版本号 + + +使用坐标引入jar包 +使用坐标引入jar包的步骤: + +在项目的 pom.xml 中编写 标签 +在 标签中 使用 引入坐标 +定义坐标的 groupId,artifactId,version +点击刷新按钮,使坐标生效 + + +依赖范围 +通过设置坐标的依赖范围(scope),可以设置 对应jar包的作用范围:编译环境、测试 +环境、运行环境。 +如下图所示给 junit 依赖通过 scope 标签指定依赖的作用范围。 那么这个依赖就 +只能作用在测试环境,其他环境下不能使用。 + +compile :作用于编译环境、测试环境、运行环境。 +test : 作用于测试环境。典型的就是Junit坐标,以后使用Junit时,都会将scope +指定为该值 +provided :作用于编译环境、测试环境。我们后面会学习 servlet-api ,在使 +用它时,必须将 scope 设置为该值,不然运行时就会报错 +runtime : 作用于测试环境、运行环境。jdbc驱动一般将 scope 设置为该值, +当然不设置也没有任何问题 +注意: +如果引入坐标不指定 scope 标签时,默认就是 compile 值。以后大部分 +jar包都是使用默认值。 +``` + +## 作业 + +```java + + + junit + junit + 4.13.2 + test + + +import org.junit.Test; + +public class APP { + @Test + public void test01(){ + System.out.println(999); + } + @Test + public void test02(){ + System.out.println("11111"); + } +} \ No newline at end of file