项目管理工具 Maven 的下载,安装,配置以及项目的创建和管理

开发工具

IDEA

Maven下载

下载地址:点击此处

在这里插入图片描述

配置环境变量

在系统变量中添加:
在这里插入图片描述
在系统变量的Path中添加:

%MAVEN_HOME%\bin

在这里插入图片描述
在命令提示符界面输入 mvn -v 验证

在这里插入图片描述

修改Maven本地仓库

在使用Maven构建项目时,所依赖的一些jar包会放在你的本地仓库中,所谓的本地仓库就是你本地的一个文件夹,我们可以自定义文件夹来作为本地仓库

修改Maven安装目录下conf文件夹下的settings.xml文件(先备份一份)

在这里插入图片描述

在IDEA中添加本地Maven

IDEA中也有自带的Maven工具,但为了方便我们修改,我们可以添加自己本地的Maven,覆盖原有的配置文件

更改当前项目设置
在这里插入图片描述
在这里插入图片描述
更改创建新项目时的设置
在这里插入图片描述
在这里插入图片描述
为了加快Maven项目的创建,可以在当前项目和新项目的设置中添加一个参数:

添加参数:-DarchetypeCatalog=internal
在这里插入图片描述

创建Maven项目

Maven项目约定目录

这是Maven项目的约定目录结构,所谓约定,就是不会强制你这样写,但会建议你这样写,所以我们还是根据这个目录结构来构建项目
在这里插入图片描述

创建Maven管理的Java项目

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

项目结构

在这里插入图片描述
和约定目录对比一下,此时项目结构是不完整的,我们需要添加几个目录

在main目录下创建resources目录,并指定为资源目录

在这里插入图片描述
在test目录下创建resources目录并指定为测试资源目录

在这里插入图片描述

项目完整结构

在这里插入图片描述

pom.xml文件(maven核心配置文件)
在这里插入图片描述
可以使用右边的Maven菜单来实现Maven不同阶段的一些功能
在这里插入图片描述

创建Maven管理的Web项目

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

项目结构

在这里插入图片描述
这里只有存放网页文件的目录,没有存放java文件的目录,我们需要完善一下,增加存放Java程序和测试文件的目录

完整项目结构

在这里插入图片描述

创建servlet和jsp文件

此时是无法直接创建servlet的,使用Maven虽然不需要导入jar包,但我们需要添加依赖,所以我们需要在pom.xml文件中添加servlet和jsp的依赖,添加依赖使用的是坐标的形式

查询依赖坐标

需要使用哪个jar包的依赖可以去上面的地址中查询对应的坐标

比如添加servlet的依赖

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
jsp依赖的相关jar包的坐标信息也是使用相同的方式添加

在这里插入图片描述
如果根据坐标信息在你的本地仓库中找不到对应版本的jar包,Maven会自动下载相应的jar包到你的本地仓库

此时你可以根据坐标信息去你的本地仓库中查看一下

servlet坐标信息对应的jar包在本地仓库中的位置:
本地仓库\javax\servlet\javax.servlet-api\3.1.0

在配置文件中添加完依赖后,重新加载一下Maven项目

在这里插入图片描述
此时就可以直接创建servlet了

在这里插入图片描述

pom.xml文件中添加的依赖会在Maven构建项目的不同阶段起作用

Maven的生命周期,也就是Maven构建项目的不同阶段

在这里插入图片描述
在pom.xml文件中添加依赖时,我们会发现一个问题 scope(范围) 标签中的参数不同
在这里插入图片描述

这个参数有什么作用呢?

这个参数的作用就是使添加的依赖在Maven构建项目的不同阶段生效

scope(范围)标签中不同值的含义:

test:只在Maven的测试阶段生效
provided:只在Maven的测试阶段和编译阶段生效
compile:在所有阶段都生效

比如我们添加的JUnit依赖,他的scope标签中是test,该依赖的作用范围是对项目进行测试的阶段,JUnit框架本身就是做测试用的

我们在配置依赖时scope标签中使用provided值,然后对项目进行打包
在这里插入图片描述
查看项目的打包文件,找不到项目所依赖的jar包
在这里插入图片描述

我们在配置依赖时scope标签中使用compile值,然后对项目进行打包
在这里插入图片描述
查看项目的打包文件,可以发现多了一个lib目录,我们可以在里面找到项目所依赖的jar包
在这里插入图片描述
在这里插入图片描述
这是因为compile值会使依赖在Maven的任何一个阶段都生效,包括Maven打包项目的阶段,而provided只会使依赖在Maven的测试和编译阶段生效,Maven的打包阶段不会生效,所以在打包时不会将项目所依赖的jar包添加进去

  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值