当前位置: 首页 > news >正文

JavaWeb之Maven学习

目录

  • Maven 简介
  • 仓库的分类
  • Maven 坐标
  • Maven 常用命令
  • Maven 生命周期
  • 依赖管理
  • 删除Maven 项目
  • 导入项目
  • 最后

Maven 简介

Maven的作用:

Maven是专门用于管理和构建Java项目的工具

它的主要功能有:

提供了一套标准化的项目结构

提供了一套标准化的构建流程(编译,测试,打包,发布……)

提供了一套依赖管理机制

仓库的分类

仓库分为三类

本地仓库

远程仓库

中央仓库

jar包的查找顺序则变为:
本地仓库 -> 远程仓库 ->中央仓库

Maven 坐标

Maven 中的坐标是资源的唯一标识

使用坐标来定义项目或引入项目中需要的依赖

Maven 坐标主要组成

groupId:定义当前Maven项目隶属组织名称(通常是域名反写,例如:com.itheima)

artifactId:定义当前Maven项目名称(通常是模块名称,例如 order-service、goods-service)

version:定义当前项目版本号

简称:GAV

<dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.27</version>
        </dependency>

Maven 常用命令

compile :编译(生成target)

clean:清理(清理掉编译生成的target)

test:测试(执行测试代码)

package:打包(将maven打包成jar包)

install:安装 (将jar发布到仓库中)

测试中的注意事项

不注意规范会报错

public class TestMaven {
    @Test
    public void test1(){
        //1.文件类名一定要是Test开头
        //2.方法名也要有test
        //打印不要有中文,一般自动化测试也用不到打印,一般使用断言来判断是否达到预期
        System.out.println("Hello Maven");
    }
}

Maven 生命周期

Maven 对项目构建的生命周期划分为3套

clean:清理工作

default:核心工作,例如编译,测试,打包,安装等

site:产生报告,发布站点等

同一生命周期内,执行后边的命令,前边的所有命令会自动执行

例如说,我执行test,就会把前面的compile先执行

依赖管理

通过设置坐标的依赖范围(scope),可以设置对应jar包的作用范围。

compile : 默认值,在编译,运行,测试中都可生效

test : 只在测试类中有效,在编译和运行中无效

provided : 编译和测试有效,在运行时无效,也就是说编译可通过,运行出错。

runtime: 在测试和运行中有效,在编译中无效,常用作不需要编译的部分,例如jdbc驱动,我们jdbc代码全是java自带的,编译可通过,必须引入驱动,否则报错。

删除Maven 项目

不要直接右键delete,这样引入的依赖还没删除,先删掉依赖,再删除maven

可以直接在idea右侧maven中删除

选中要删除的maven,右键,然后点击图中红框
在这里插入图片描述

导入项目

直接导入pom.xml文件即可。

在这里插入图片描述

最后

如果你对本文有疑问,你可以在文章下方对我留言,敬请指正,对于每个留言我都会认真查看。

相关文章:

  • ip-guard安全网关问题集锦一
  • 新知实验室_初探腾讯云音视频
  • DOM中的diff算法详解
  • 前端网站动态主题色解决方案
  • 用DevExpress实现基于HTMLCSS的桌面应用程序的UI(一)
  • Android OpenGL ES 3.0 PBO像素缓冲区对象
  • 腾讯T4级架构师用21个项目带你吃透379页深度学习TensorFlow实践pdf
  • Eureka服务注册发现原理
  • RK3399平台开发系列讲解(中断篇)中断控制器驱动初始化
  • 【Redis】Redis的持久化
  • LibreOJ_10010
  • 数据增强
  • 一文搞懂堆外内存(模拟内存泄漏)
  • 还在调API写所谓的AI“女友”,唠了唠了,教你基于python咱们“new”一个(深度学习)
  • Win7纯净版系统镜像64位介绍
  • Kali系统MSF模块暴力破解MySQL弱口令漏洞
  • [附源码]java毕业设计疫情环境下的酒店管理系统
  • kafka配置外网访问
  • java每一练(3)
  • Java学习----前端4
  • R语言最优聚类数目k改进kmean聚类算法
  • 【torch.utils.data.sampler】采样器的解析和使用
  • Springboot魅力乡村管理系统srb4s计算机毕业设计-课程设计-期末作业-毕设程序代做
  • 实战Docker未授权访问提权
  • 【微信小程序】页面跳转、组件自定义、获取页面参数值
  • 数据结构:二叉树的链式结构
  • 天然气锅炉烧水的原理_天然气锅炉总是停
  • 导热油锅炉厂家_燃油气蒸汽锅炉
  • 除氧器良好除氧的条件_锅炉除氧器价格