学习目标:
掌握maven搭建以及相关知识学习内容:
1、 为什么学习maven 2、 简介 3、 maven中的概念 4、 maven环境搭建 5、 maven命令 6、 添加jar到maven仓库学习时间:
1、 2021年10月24日学习产出:
1、 技术笔记 1 遍 2、搭建maven两遍为什么要学习maven
痛点 1:jar 包难以寻找
痛点 2:jar 包依赖的问题 一个jar中依赖于另一个jar包
痛点 3:jar 不方便管理 按不同的功能管理jar
痛点 4:项目编译
maven简介
maven是apache提供的一款开源的项目构建工具.
他用来管理项目中的jar,管理jar之间的依赖关系,完成项目的打包,编译,测试等功能.
maven中的概念
pom
pom(Project Object Model 项目对象模型)
Maven 管理的项目的根目录下都有一个 pom.xml 文件。pom.xml 文件指示Maven 如何工作。
在 pom.xml 文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、项目依赖的 jar、插件、编译选项等。
一旦在 pom.xml 文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下载相应的构件。
项目坐标
jar在仓库中的地址
groupId(类似于包名)、artifactId(项目名)、packaging(jar,war)、version(版本号)
它们的组合被称为项目的坐标,它们形成了项目的唯一标识
通过坐标来精确定位构件。其中 groupId、artifactId、version 是必须的,且这三项的值必须唯一,packaging 是可选的(默认为 jar)。
maven仓库
中央仓库全球共享,先将 jar 从中央仓库下载到本地仓库,然后在项目中引用本地仓库的 jar。
maven环境搭建
1、在官网下载maven
2、配置环境变量
3、测试 在命令行 mvn -version
4、配置maven本地仓库地址,阿里云镜像仓库地址
<mirror>
<id>alimaven</id>
<name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
idea中设置maven
可以一键设置新项目的maven
创建maven工程
pom.xml配置
maven 仓库官网(http://mvnrepository.com/)
可以在这官网中下载所需开发的jar包
管理jar之间的依赖
<!--管理 jar 之间的依赖-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
配置Servlet开发环境
<!--配置 servlet 开发环境 -->
<dependency>
<!--包名,在文件中的位置-->
<groupId>javax.servlet</groupId>
<!--项目名-->
<artifactId>javax.servlet-api</artifactId>
<!--版本号-->
<version>3.1.0</version>
<!--proided不打包 compile打包-->
<scope>provided</scope>
</dependency>
各个子元素功能解释:
< groupId>,< artifactId>和< version>:依赖项的基本坐标
< type>:依赖项的 packaging 类型,默认是 jar;
< scope>:依赖项的作用范围,默认是 compile。各个取值及含义如下:
compile:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖包会被拷贝到 war 包中的 lib 目录中。
provided:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包。
maven命令
Maven 常用命令
1、compile 编译
2、clean 删除 target
3、test test case junit/testNG
4、package 打包
5、install 把项目 install 到本地仓库 (自己所写的工具类导成jar包)
在项目中写完工具类,再通过install生成jar包到库里
<!--自己写的工具类导入到maven本地仓库后滴啊用-->
<dependency>
<groupId>com.ffyc</groupId>
<artifactId>myUtil</artifactId>
<version>1.0.0</version>
</dependency>
添加jar到maven仓库
开发过程有可能会用到一些 jar 包,但是这部分 jar 包在 maven 仓库中并没有存在,我们需要将其添加到我们的本地仓库中,这样也就可以使用 maven 来管理此jar 包了。
命令
mvn install:install-file
-DgroupId=组名(com.taobao)
-DartifactId=构建名(druid)
-Dversion=版本(1.0)
-Dpackaging=包类型(jar )
-Dfile=jar 包完整路径
<!--把库中没有的jar包导入到maven本地仓库-->
<!--mvn install:install-file
-DgroupId=com.ffyc
-DartifactId=mysql8
-Dversion=8.0
-Dpackaging=jar
-Dfile=F:\mysql.jar-->
<dependency>
<groupId>com.ffyc</groupId>
<artifactId>mysql8</artifactId>
<version>8.0</version>
</dependency>