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

(七)JavaWeb后端开发1——Maven

目录

1.Maven概述

2.Maven依赖管理

2.1依赖配置

2.2依赖传递

2.3依赖范围

2.4生命周期


1.Maven概述

maven是一款管理和构建java项目的工具

Maven的作用:

  • 依赖管理:方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题
  • 统一项目结构:提供标准、统一的项目结构
  • 项目构建:标准跨平台(Linux、Windows、MacOS)的自动化项目构建方式

1.依赖管理:比如如果想使用某个jar包,只需要在Maven项目下的pom.xml文件里面加上依赖就行了,Maven会自动联网下载依赖,如下所示:

<dependencies>
    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>  //依赖名
        <version>1.2.11<version>  //版本号
    </dependency>
</dependencies>

2.统一项目结构:由于eclipse、IDEA这些IDE都有着自己的项目结构,不好管理,使用Maven后就有统一的项目结构

3.项目构建:Maven有compile(编译)和package(打包)指令,然后生成之后放在target目录下(存放了编译之后的字节码class文件)

如下图所示,jar包就是项目打包后的文件,然后可以在不同的系统上运作

2.Maven依赖管理

2.1依赖配置

groupId组织名,artifactId模块名

 <dependencies>
     <dependency>
         <groupId>ch.qos.logback</groupId>
         <artifactId>logback-classic</artifactId>
         <version>1.5.6</version>
//上面三行叫做依赖的坐标
     </dependency>
</dependencies>

2.2依赖传递

比如此处只添加了logback一个依赖,但是Maven会自动添加了其他的依赖

2.3依赖范围

大部分情况下scope的取值都是compile,也就是默认值,所以把scope那行删掉也问题不大

2.4生命周期

Maven的生命周期就是为了对所有的maven项目构建过程进行抽象和统一

Maven中有3套相互独立的生命周期:

  • clean:清理工作
  • default:核心工作,如:编译、测试、打包、安装、部署等
  • site:生成报告、发布站点等

比如,如果要执行package打包的操作,需要先把compile、test完成(重点:是同一套生命周期内阶段是有顺序的,比如执行instal不会先执行clean,因为它们属于两套生命周期)


http://www.kler.cn/a/375096.html

相关文章:

  • 【数据结构-合法括号字符串】力扣921. 使括号有效的最少添加
  • js动态修改样式(:root)
  • [c++高阶]AVL树的深度剖析模拟实现
  • 鸿蒙打包hvigorw clean报错No npmrc file is matched in the current user folder解决
  • Xcode 15.4 运行flutter项目,看不到报错信息详情?
  • 使用yolov3配置文件训练自己的数据
  • 大语言模型驱动的跨域属性级情感分析——论文阅读笔记
  • 创造tips的秘籍——PHP回调后门
  • Redis 实战 问题
  • 【Sublime Text】格式化Json和XML
  • 线代的几何意义(一)——向量,坐标,矩阵
  • thinkphp和vue基于Workerman搭建Websocket服务实现用户实时聊天,完整前后端源码demo及数据表sql
  • Docker部署jenkins容器时,允许jenkins容器内部控制宿主机上的docker
  • 正向解析,反向解析
  • CSS3新增长度单位(二)
  • 从比亚迪超越特斯拉,看颠覆全球市场的中国力量
  • 大语言模型微调方法详解【全量微调、PEFT、LoRA、Adapter】
  • Rust 力扣 - 2090. 半径为 k 的子数组平均值
  • 低压电容补偿不用时会有电流损耗吗?
  • Lampiao靶机入侵实战
  • 计算机考研,选择西安交通大学还是哈工大?
  • 吞吐量最高飙升20倍!破解强化学习训练部署难题
  • Java解析word中的表格或者文本
  • SpringBoot学生请假系统:设计与实现全攻略
  • YOLO11改进-模块-引入基于部分卷积的前馈网络PCFN
  • 第十七届山东省职业院校技能大赛通知分享