Maven基础架构与整体认识

🚗🚗🚗🚗🚗🚗🚗 数据结构专栏🚗🚗🚗🚗🚗🚗🚗🚗🚗🚗

🛹🛹🛹🛹🛹🛹🛹小知识总结分享🛹🛹🛹🛹🛹🛹🛹🛹🛹🛹

🚀🚀🚀🚀🚀🚀🚀题目历练场🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀

🚢🚢🚢🚢🚢🚢🚢功能包与集合类介绍🚢🚢🚢🚢🚢🚢🚢🚢🚢

🛞🛞🛞🛞🛞🛞🛞java EE🛞🛞🛞🛞🛞🛞🛞🛞🛞🛞🛞🛞🛞

一、什么是maven

maven是管理和构建Java项目的工具

  • 依赖管理
    • pom.xml maven的配置
  • 项目构建
    • 标准化构建项目的流程 : 编译,测试,打包,发布
  • 统一的项目结构

pom.xml结构

maven的仓库模式

本地仓库,私服,中央仓库.都有点依赖都会从本仓库进行调用,如果本地没有会按照私服 > 中央仓库的优先级下载到本地仓库,在进行调用.

二、maven的安装

解压 maven 官方压缩包

  • bin包 : 一些指令
  • conf : 配置文件
  • lib : jar包
  • maven repository : 本地仓库

配置本地仓库

  • 在bin -> setting -> < local repository > 配置本地仓库路径

配置阿里云私服

  • 在bin -> setting -> < mirror > 配置阿里云私服

配置环境变量

  • 新建系统变量
  • 在path中新建,

三、Idea集成maven

maven项目的创建与导入

3.1 全局配置

  • maven配置
  • 运行时环境配置
  • 编译器字节码配置

3.2创建maven项目

  • 新建空项目 --> 配置jdk版本
  • new modul创建新的模块 ----> Java,maven进行构建

第一个maven项目

3.3Maven的坐标

坐标是项目的唯一标识

  • group-Id : 组织名 (域名反写)
  • artifact-Id : 模块名
  • version : 版本号
    • < version >0.0.1-SNAPSHOT< /version > 表示还在开发阶段

3.4 导入Maven项目

方式一

  • file -> project structure -> modules -> import module ->选择maven项目的pom.xml文件

  • 文件是容易导入的,关键是需要导入文件的pom文件,这样才能被识别为maven项目.

  • 建议先把maven项目复制到项目目录下,最后导入只是导入pom文件


方式二

  • maven面板 -> " + " -> 选择maven项目的pom.xml文件

四 、依赖管理

4.1 依赖配置

通过坐标引入依赖,坐标信息在Maven 仓库:搜索/浏览/探索进行搜索

但是依赖具有传递性,也就是依赖所依赖的依赖也会被配置到pom文件中.

4.2排除依赖

通过< exclusions> < exclusion > 主动断开依赖,无需指定版本号.

直接从要移除的依赖中查看组织名与项目就行

4.3生命周期

是对所有的maven项目构建过程的抽象与统一. 主要存在三个生命周期,在同一套生命周期中后面的阶段依赖于前面的阶段.

  • clean : 移除上一次构建生成的文件
  • compile : 编译源代码
  • test : 使用合适的单元测试框架进行测试
  • package : 将边以后的文件进行打包
  • install: 安装到本地仓库 通过项目坐标在本地仓库中查找jar包

五、单元测试

5.1测试基本概念

测试划分

  • 单元测试
  • 集成测试
  • 系统测试
  • 验收测试

测试方法

  • 白盒测试 : 明白内部逻辑与代码逻辑,测试逻辑正确性
  • 黑盒测试 : 不明白代码细节,验证功能的正确性
  • 灰盒测试 : 兼顾上面两者

5.2入门程序

JUnit

最流行的单元测试框架

  • main方法测试的弊端与junit优势

5.2.1 编写单元测试

  • 在pom文件中,引入JUnit的依赖

  • 在test/java目录下,创建测试类,编写测试方法,声明@Test注解.

    • 在测试方法中必须声明为 public void 形式

什么是

注解: 千问-阿里 AI 助手

5.3.2断言

测试有结果不能直接判断就是测试成功,断言就是对测试结果在进行一步检索确认.

  • 最后一个方法是一个函数式接口注意一下

5.3.3常见的注解

  • 执行前后注解

  • 参数化测试注解

5.4.4 企业级开发规范

  • 覆盖率测试方法

  • AI生成单元测试

六 、依赖范围

  • 默认依赖范围
  • 指定依赖范围
    在坐标后面,通过 < scope > 标签进行设置

七、maven遇到问题

  • 依赖下载失败问题

总结

  • 到这里我的分享就先结束了~,希望对你有帮助
  • 我是dylan 下次见~
    • 无限进步
相关推荐
万亿少女的梦1684 小时前
基于Spring Boot、Java与MySQL的网络订餐系统设计与实现
java·spring boot·mysql·系统设计·网络订餐
咩咩啃树皮13 小时前
第40篇:Vue3组件化开发精讲——组件拆分、复用、父子通信、工程化架构
java·前端·架构
鱟鲥鳚13 小时前
Spring Boot 集成 LangChain4j:从模型调用到 Tool Calling(Demo版)
java·spring boot
大模型码小白15 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
腾渊信息科技公司15 小时前
Spring Boot对接MES实战:视觉检测数据自动同步方案
java·人工智能·spring boot·后端·计算机视觉·ai·软件需求
爱笑的源码基地16 小时前
高并发 Redis 缓存门诊HIS系统源码,含财务统计药房进销存
java·程序·门诊系统·诊所系统·云诊所源码
wuqingshun31415916 小时前
TCP超时重传机制是为了解决什么问题?
java
莫逸风19 小时前
【AgentScope 2.0】 0. 学习指南
java·llm·agent·agentscope
z1234567898619 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
yaoxin52112320 小时前
470. Java 反射 - Member 接口与 AccessFlag
java·开发语言·python