做网站都需要准备什么软件,沧州市网站建设价格,免费低代码管理系统开发,郑州哪有做网站的公司目录 一、Maven引言1.1 Maven的核心概念✍. POM (Project Object Model)✌. 依赖管理✍. 生命周期与构建阶段✌. 插件系统 1.2 Maven的工作流程✍. 读取POM文件#xff1a;✌. 依赖解析#xff1a;✍. 构建生命周期#xff1a;✌. 插件执行#xff1a;✍. 构建输出#xf… 目录 一、Maven引言1.1 Maven的核心概念✍. POM (Project Object Model)✌. 依赖管理✍. 生命周期与构建阶段✌. 插件系统 1.2 Maven的工作流程✍. 读取POM文件✌. 依赖解析✍. 构建生命周期✌. 插件执行✍. 构建输出 二、 下载安装、部署配置2.1 解压2.3 配置环境变量2.4 测试 2.5 仓库[了解]Maven配置修改仓库位置设置镜像 三、IDEA - MAVEN3.1 idea关联maven3.2 为新项目设置3.3 创建java项目[重点]3.4 java项目结构3.5 pom3.6 导入依赖查找依赖使用依赖 3.7 测试3.8 BUG处理3.9 经验总结 一、Maven
引言
Apache Maven已经成为了不可或缺的构建管理和项目管理工具。自2004年诞生以来Maven以其标准化的构建过程、依赖管理机制以及强大的插件生态系统极大地简化了项目的构建和维护工作。 本文将深入探讨Maven的核心概念、工作原理及其在实际开发中的应用帮助开发者更好地理解和利用这一强大的工具。 1.1 Maven的核心概念
✍. POM (Project Object Model)
Maven的核心是项目对象模型Project Object Model, POM定义在pom.xml文件中。POM是一个XML文件包含了项目的基本信息、配置细节以及项目依赖。它不仅是构建过程的配置中心也是Maven理解项目结构和管理依赖的关键。
✌. 依赖管理
Maven通过坐标系统groupId, artifactId, version唯一标识每一个依赖库并自动从远程仓库下载所需的JAR包及依赖解决了“依赖地狱”问题。开发者无需手动管理类路径和版本冲突。
✍. 生命周期与构建阶段
Maven定义了一套标准的生命周期包括清理clean、编译compile、测试test、打包package、验证verify和安装install等阶段。开发者可以通过执行不同的生命周期阶段来完成特定任务而不需要了解底层命令的具体实现。
✌. 插件系统
Maven的强大之处还在于其丰富的插件系统。几乎每一个构建任务都有对应的插件来完成如编译源代码的maven-compiler-plugin、运行测试的maven-surefire-plugin等。用户可以根据需要选择或自定义插件扩展Maven的功能。
1.2 Maven的工作流程
✍. 读取POM文件
Maven首先解析项目根目录下的pom.xml文件获取项目配置信息。
✌. 依赖解析
根据POM中声明的依赖Maven查找并下载所有直接和传递依赖到本地仓库。
✍. 构建生命周期
根据用户指定的命令如mvn installMaven依次执行相应的生命周期阶段。
✌. 插件执行
在每个构建阶段Maven调用相应的插件来完成具体任务如编译源代码、运行测试等。
✍. 构建输出
最终Maven根据配置生成可部署的工件如JAR、WAR并根据指令可能安装到本地仓库或部署到远程仓库。
二、 下载安装、部署配置 网址 Maven – Download Apache Maven 下载地址 Index of /dist/maven/maven-3 (apache.org) 2.1 解压 特别注意: 路径不要有中文路径 解压后有几个文件夹
- bin 运行maven命令的脚本
- boot 运行是需要类库
- conf 配置,有关于maven的配置文件
- lib 运行是需要的jar包2.3 配置环境变量 系统变量-创建: MAVEN_HOME 值是maven安装路径 系统变量path添加 %MAVEN_HOME%\bin 1.打开设置找到系统-----系统信息
2.找到高级系统设置 打开系统版本不同位置可能不太一样 3.点击环境变量 3.点击新建 系统变量-创建: MAVEN_HOME 值是maven安装路径 系统变量path添加 %MAVEN_HOME%\bin 然后就完成了 2.4 测试
打开cmd,输入mvn -v 2.5 仓库[了解] maven项目管理工具,管理依赖(jar包),实现依赖的复用. maven有仓库,将依赖(jar包)放入仓库,每个项目都去复用 本地仓库 自己电脑上需要依赖的时候,会先从本地仓库中找,如果找不到就会去中央仓库找,下载到本地仓库,下次再用就可以从本地仓库找到使用 中央仓库 位于国外服务器,包含绝大部分依赖可能有时候访问比较慢 公共仓库 私服(个人)阿里云,网易,等等 Maven配置
修改仓库位置 maven安装好后,默认本地仓库在c盘,要修改为其他地方 修改maven的配置文件(conf\settings.xml) !-- 将53行注释内代码,复制出来,粘贴到55行,修改路径为自己本地仓库位置 --localRepositoryD:\repository/localRepositoryps: 记得保存,ctrls
设置镜像 依赖会先从本地仓库找,本地没有会从中央仓库下载到本地仓库,中央仓库访问很慢,所以需要设置国内镜像,访问就很快! !--setting.xml中添加如下配置 146行附近一定是在开闭标签 mirrors /mirrors中间设置
--mirroridaliyun/id !-- 中心仓库的 mirror(镜像) --mirrorOfcentral/mirrorOf nameNexus aliyun/name!-- aliyun仓库地址 以后所有要指向中心仓库的请求都会指向aliyun仓库-- urlhttp://maven.aliyun.com/nexus/content/groups/public/url /mirror三、IDEA - MAVEN
3.1 idea关联maven 打开任何一个idea项目 file - setting for new project 找到build 3.2 为新项目设置
因为上面的设置只是对当前项目生效,需要对后续每个项目都生效!!需要再设置 3.3 创建java项目[重点]
找到maven选项 设置信息 3.4 java项目结构 |-项目名
|---src
|------main
|---------java
|---------resources
|------test
|---------java
|---------resources
|---pom.xml3.5 pom pom 项目对象模型(project object model),这是一个xml文件(ps: xml文件一种文件格式,类似HTML是标签形式的) pom文件内定义 项目信息 项目名组织名版本打包方式 默认是jar , 普通java项目可以指定为war, 即web项目 项目依赖 依赖就是jar包是以坐标的形式展现 构建工具 !-- 项目信息-- groupIdcom.qf/groupIdartifactIdday18_java/artifactIdversion1.0-SNAPSHOT/version!-- 打包方式 ,默认是jar,如果是javaweb项目,打包方式是war--packagingjar/packaging!-- 定义依赖(jar包) --dependencies!-- 具体的jar包依赖坐标 --
!-- dependency--
!-- groupId/groupId--
!-- artifactId/artifactId--
!-- version/version--
!-- /dependency--/dependencies3.6 导入依赖
查找依赖 官方提供一中央仓库网站,网站中有所有jar包的依赖信息,就可以搜索依赖 Maven Repository: Search/Browse/Explore (mvnrepository.com) 使用依赖 将复制的依赖坐标,粘贴到pom文件 !-- 依赖,就是jar包 --dependencies dependencygroupIdcn.hutool/groupIdartifactIdhutool-all/artifactIdversion5.8.16/version/dependency/dependencies还可以进入仓库中去查看,是否下载成功
3.7 测试
public class Test {public static void main(String[] args) {FileUtil.del(E:\\IDEA-WorkSpace\\test_maven\\a.txt);System.out.println(over );// 能执行就说明maven导入hutool成功}
}3.8 BUG处理
如果依赖赋值粘贴后有红色报错,刷新maven jar包的话就在子模块导入依赖即可
3.9 经验总结
当你发现下方进度条一直在走,感觉走不完, 一般情况镜像出问题 此时需要打开idea的settings确定一下maven安装路径和settings配置文件是否是自己的改成自己的路径后,刷新maven 使用maven,一般就是注意 会创建maven项目(注意gav坐标)注意代码位置(src/main/java)注意pom.xml,会引入依赖(会查依赖) 导入依赖后记得刷新maven让其下载依赖