[003-3].第5节:IDEA环境中使用Maven

我的后端学习大纲

我的Maven学习大纲


1.1创建父工程

a.创建maven工程:

  • 1.选择maven工程创建:
    在这里插入图片描述
  • 2.父项目创建成功在这里插入图片描述
  • 3.IDEA中的Maven选项设置快捷位置:
    在这里插入图片描述
    在这里插入图片描述

b.配置Maven信息

  • 1.每次创建 Project 后都需要设置 Maven 家目录位置,否则 IDEA 将使用内置的 Maven 核心程序(不稳定)并使用默认的本地仓库位置。这样一来,我们在命令行操作过程中已下载好的 jar 包就白下载了,默认的本地仓库通常在 C 盘,还影响系统运行。
    在这里插入图片描述

1.2.创建Java模块工程

a.在父工程下,创建java模块步骤:

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

  • 2.填写坐标:
    在这里插入图片描述
  • 3.第一个模块建完后再看下父工程中的pom文件变化:
    在这里插入图片描述

b.三种方式执行Maven命令:

b1.方式1:

在这里插入图片描述

b2.方式2:

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

  • 右上角表示执行的命令的作用范围:
    在这里插入图片描述
  • -D就是说后面要附加命令要参数,-D后面的内容是是紧挨着,不要有空格
    在这里插入图片描述

maven.test.skip=true 表示在执行命令的过程中跳过测试:mvn clean install -Dmaven.test.skip=true

b3:在终端中打开的方式:

在这里插入图片描述

  • 然后在这个终端命令行窗口中可以直接运行一些命令:
    在这里插入图片描述

2.在Maven工程中创建Web模块工程:

2.1.编码实现:

a.创建Java模块:

  • 1.按照前面的同样操作创建模块,此时这个模块其实还是一个Java模块
    在这里插入图片描述
  • 2.修改打包方式:Web 工程将来打包当然应该是 war 包,web工程要求打包方式是war包
    在这里插入图片描述

b.Web 设定:

  • 1.首先打开项目结构菜单:
    在这里插入图片描述
  • 2.然后到 Facets查看 IDEA 是否已经帮我们自动生成了 Web 设定。正常来说只要我们确实设置了打包方式为 war,那么 IDEA 就会自动生成 Web 设定,但是有的IDEA版本不会。
    在这里插入图片描述
    在这里插入图片描述
  • 3.如果IDEA版本原因不会自动生成web设定,我们就需要自己进行设置,设置步骤如下:
    在这里插入图片描述
  • 4.更改路径:借助IDEA生成web.xml;web.xml别名叫做:部署描述符;
    在这里插入图片描述
    在这里插入图片描述
  • 5.按照maven工程的目录结构设置,修改生成web.xml的位置,web.xml的别名叫做部署描述符
    在这里插入图片描述
  • 6.设置web资源的根目录:Web 资源的根目录需要设置为 src/main/webapp 目录,设置完后点击确认。
    在这里插入图片描述
  • 7.目前位置的项目目录:
    在这里插入图片描述
  • 8.新家index.jsp页面:
    在这里插入图片描述
  • 9.建一个java类:
    在这里插入图片描述
  • 10.添加tomcat:
    在这里插入图片描述在这里插入图片描述

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

  • 11.浏览器发送请求,就显示了内容:
    在这里插入图片描述

3.工程导入到IDEA

Maven工程除了自己创建的,还有很多情况是别人创建的。而为了参与开发或者是参考学习,我们都需要导入到 IDEA 中。下面我们分几种不同情况来讨论

3.1来自版本控制系统

  • 目前通常使用的都是 Git(本地库) + 码云(远程库)的版本控制系统,可以在IDEA 导入远程库中的项目,在Git章节中已经j记录了

3.2.来自工程目录

直接使用 IDEA 打开工程目录即可。下面咱们举个例子:

  • 1.比如工程压缩包
    • 假设别人发给我们一个 Maven 工程的 zip 压缩包:maven-rest-demo.zip。从码云或GitHub上也可以以 ZIP 压缩格式对项目代码打包下载。
  • 2.解压
    • 如果你的所有 IDEA 工程有一个专门的目录来存放,而不是散落各处,那么首先我们就把 ZIP 包解压到这个指定目录中。
      在这里插入图片描述
  • 3.打开
    • 只要我们确认在解压目录下可以直接看到 pom.xml,那就能证明这个解压目录就是我们的工程目录。那么接下来让 IDEA 打开这个目录就可以了
      在这里插入图片描述
  • 4.设置 Maven 核心程序位置
    • 打开一个新的 Maven 工程,和新创建一个 Maven 工程是一样的,此时 IDEA 的 settings 配置中关于 Maven 仍然是默认值,所以我们还是需要像新建 Maven 工程那样,指定一下 Maven 核心程序位置
      在这里插入图片描述

4.模块导入

4.1.模拟这种情况:

  • 1.在实际开发中,通常会忽略模块(也就是module)所在的项目(也就是project)仅仅导入某一个模块本身。这么做很可能是类似这样的情况:比如基于 Maven 学习 SSM 的时候,做练习需要导入老师发给我们的代码参考
    在这里插入图片描述

4.2.导入 Java 类型模块

  • 1.找到老师发的工程目录
  • 2.找到要导入的那个模块
    在这里插入图片描述
  • 3.粘贴到我们自己工程目录下
    在这里插入图片描述
  • 3.在 IDEA 中执行导入那个模块:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 4.导入模块后,修改pom.xml文件:

4.7.导入 Web 类型模块

  • 导入web类型的模块时候,其它操作和上面演示的都一样,只是多一步:删除多余的、不正确的 web.xml 设置。如下图所示:
    在这里插入图片描述

5.其他一些概念

5.1.生命周期

a.生命周期作用

  • 为了让构建过程自动化完成,Maven 设定了三个生命周期,生命周期中的每一个环节对应构建过程中的一个操作

b.三个主要的生命周期

在这里插入图片描述

c.生命周期特点

  • 1.前面三个生命周期彼此是独立的
  • 2.在任何一个生命周期内部,执行任何一个具体环节的操作,都是从本周期最初的位置开始执行,直到指定的地方。(本节记住这句话就行了,其他的都不需要记)
  • 3.Maven 之所以这么设计其实就是为了提高构建过程的自动化程度:让使用者只关心最终要干的即可,过程中的各个环节是自动执行的

5.2.插件和目标

a.插件的作用

  • Maven 的核心程序仅仅负责宏观调度,不做具体工作。具体工作都是由 Maven 插件完成的。例如:编译就是由 maven-compiler-plugin-3.1.jar 插件来执行的。

b.插件的目标

  • 1.一个插件可以对应多个目标,而每一个目标都和生命周期中的某一个环节对应
    在这里插入图片描述
  • 2.Default 生命周期中有 compile 和 test-compile 两个和编译相关的环节,这两个环节对应 compile 和 test-compile 两个目标,而这两个目标都是由 maven-compiler-plugin-3.1.jar 插件来执行的。

c.仓库

  • 1.本地仓库:在当前电脑上,为电脑上所有 Maven 工程服务
  • 2.远程仓库:需要联网
    • a.局域网:我们自己搭建的 Maven 私服,例如使用 Nexus 技术
    • b.Internet
      • 中央仓库
      • 镜像仓库:内容和中央仓库保持一致,但是能够分担中央仓库的负载,同时让用户能够就近访问提高下载速度,例如:Nexus aliyun
  • 3.建议:不要中央仓库和阿里云镜像混用,否则 jar 包来源不纯,彼此冲突

专门搜索 Maven 依赖信息的网站

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值