Maven概念及搭建

news/2024/10/20 5:33:11/

1.为什么我们要学习 maven?

maven 还未出世的时候,我们有很多痛苦的经历
痛点 1:
jar 包难以寻找
痛点 2:
jar 包依赖的问题
痛点 3:
jar 不方便管理
痛点 4:项目编译

2.Maven 简介

Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它
用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、
测试、打包和发布等工作

Maven 中的概念

Pom(Project Object Model 项目对象模型)

Maven 管理的项目的根目录下都有一个 pom.xml 文件。pom.xml 文件指示
Maven 如何工作。
在 pom.xml 文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、
项目依赖的 jar、插件、编译选项等。
一旦在 pom.xml 文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下
载相应的构件。

项目坐标

maven 给每个 jar 定义了唯一的标志,这个在 maven 中叫做项目的坐标,通过
这个坐标可以找到你需要 用到的任何版本的 jar 包。
groupId、artifactId、packaging、version 的组合被称为项目的坐标,它们形
成了项目的唯一标识,Maven
通过坐标来精确定位构件。其中 groupId、artifactId、version 是必须的,且
这三项的值必须唯一,packaging 是可选的(默认为 jar)。

仓库

中央仓库全球共享,先将 jar 从中央仓库下载到本地仓库,然后在项目中引用本地
仓库的 jar

3.Maven 开发环境搭建:

前提
(1)安装 jdk
(2)Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通
畅。

3.1 下载 maven 服务器

maven 官网:http:// maven.apache. org

3.2 安装,配置 maven

点击下载二进制的 apache-maven-3.6.0-bin.zip 进行解压

然后在系统环境 中配置环境变量,在path中配置到bin目录,配置成功后输入命令mvn -version
查看版本如下图
表示 maven 环境配置成功。

 配置本地仓库地址

接下来根据情况在本地磁盘中建立通过 maven 下载后 jar 文件所存储的文件夹, 一般我们称为”仓库(repository)”;最终是如何将下载的 jar 文件存储到我们指 定的仓库中呢?
  (1) 需要在 maven 的服务器解压的文件中找到 conf 文件夹下的 settings.xml 文件进行修改,如下图所示:
(2)配置阿里云 maven 镜像仓库,下载速度更快
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>

3.3idea 中设置 maven

 

3.4 创建 maven 工程

 

 

 

 

4.Pom.xml 配置

maven 仓库官网(http://mvnrepository.com/) 如下图所示:
在此官网就可以下载自己所需开发 jar 包,继续点击链接打开如下:

 

例如下载 servlet jar 包

在 Pom.xml 文件配置 jar 包信息,使用 maven 自动下载 jar 包
管理 jar 之间的依赖
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<!--配置 servlet 开发环境 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

 

各个子元素功能解释:
<groupId>,<artifactId>和<version>:依赖项的基本坐标 <type>:依赖项的 packaging 类型,默认是 jar;
<scope>:依赖项的作用范围,默认是 compile。各个取值及含义如下:
compile:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖
包会被拷贝到 war 包中的 lib 目录中。
provided:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web
容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包。

5.maven 命令

 

Maven 常用命令
1. compile 编译
2. clean
 删除 target
3. package 打包
4. install
把项目 install 到本地仓库
5. test
运行测试代码

http://www.ppmy.cn/news/87939.html

相关文章

SpringBoot统一功能处理的三个常见实例

我们的统一功能处理肯定是通过Spring拦截器处理的撒 Spring拦截器 截器的实现分为以下两个步骤&#xff1a; 1. 创建⾃定义拦截器&#xff0c;实现 HandlerInterceptor 接⼝的 preHandle&#xff08;执⾏具体⽅法之前的预处理&#xff09;⽅ 法。 2. 将⾃定义拦截器加⼊ W…

[算法前沿]--017-中文大模型ChatGLM微调:P-Tuning,deepspeed,LoRA<中>

文章目录 1. ChatGLM模型介绍2. 基于 P-Tuningv2的高效参数微调方法2.1 环境配置2.3 P-TuningV2 教程2.3.1 训练2.3.1.1 P-Tuning v22.3.1.2 Finetune2.3.1.3 LoRA2.3.2 推理2.3.2.1 示例12.3.2.2 示例22.3.3 评估结果1. ChatGLM模型介绍 ChatGLM-6B 是一个开源的、支持中英双语…

【历史上的今天】5 月 26 日:美国首个计算机软件程序专利;苹果市值首次超越微软;Wiki 的发明者出生

整理 | 王启隆 透过「历史上的今天」&#xff0c;从过去看未来&#xff0c;从现在亦可以改变未来。 今天是 2023 年 5 月 26 日&#xff0c;在 1995 年的今天&#xff0c;微软公司首席执行官比尔盖茨发表了一番讲话&#xff0c;他认为自己的公司在估计互联网的影响和普及方面错…

windows 环境jar包设置自启动

在Windows操作系统中&#xff0c;可以通过创建一个批处理文件并将其添加到Windows服务中来设置Spring Boot JAR包的开机自启动。具体步骤如下&#xff1a; 创建一个名为spring-boot-app.bat的批处理文件&#xff0c;并在其中指定启动Spring Boot应用程序的命令&#xff0c;如下…

【C++进阶之路】内存管理

文章目录 一.内存管理1. 内存布局2. C的内存管理 ①内置类型② 自定义类型 3. operate new 与 operate delete ① 解读operate new源代码② 解读operate delete源代码 4. new和delete的基本原理①new对类对象②delete对类对象 拓展—— 深入理解delete[]和new[]对比 C和C内存…

Mysql数据库备份 一天一次 保存最新五天 每天凌晨三点备份

Mysql数据库备份 一天一次 保存最新五天 每天凌晨一点三十备份 步骤一 先查看 sudo systemctl status crond 是否存在 不存在执行下面代码 sudo yum install cronie sudo systemctl start crond sudo systemctl enable crond sudo systemctl status crond 步骤二 Cd /home …

SpringBoot与RedisCacheManager整合

本文根据众多互联网博客内容整理后形成&#xff0c;引用内容的版权归原始作者所有&#xff0c;仅限于学习研究使用 SpringBoot 缓存管理器CacheManager 从3.1开始Spring定义了org.springframework.cache.Cache和org.springframework.cache.CacheManager接口来统一不同的缓存技…

A-21S吸金树脂在金矿尾水、镀金废水中回收金的应用

吸金树脂Tulsimer A-21S 一、技术介绍 传统上使用活性碳吸附金子&#xff0c;珍贵的金会被活性碳吸附于表面&#xff0c;再藉由洗涤或直接焚烧以回收金。使用离子交换树脂回收贵金属比活性碳还具有多方面的优势&#xff0c; 因为藉由特殊制造过程中&#xff0c; 我们可以在其结…