学习maven工具
文章目录
- 🐒个人主页
- 🏅JavaEE系列专栏
- 📖前言:
- 🏨maven工具产生的背景
- 🦓maven简介
- 🪀pom.xml文件(project object Model 项目对象模型)
- 🪂maven工具安装步骤
- 两个前提:
- 下载 maven 服务器
- 配置 maven (一变量二修改)
- 在 maven 的服务器解压的文件中找到 conf 文件夹下的`settings.xml 文件`进行修改,如下图所示
- 🧸在idea中创建maven项目
- Pom.xml 配置
- 标签注解
- Maven 常用命令(可以在cmd窗口中来使用)
🐒个人主页
🏅JavaEE系列专栏
📖前言:
本篇博客主要以介绍maven工具-项目构建、jar包管理、打包
🏨maven工具产生的背景
由于java项目中会使用大量的jar包,而又因为许多jar包之间有相互依赖的关系,造成了导入一个jar包,可能还需要再导入多个与其关联的jar包,故动辄就上百个jar包,不但让人看得眼花缭乱,而且很容易因为jar包找不全,或其依赖的jar包找不全而发生项目报错。程序员们也常常因为项目编译而烦恼,在此背景下:maven横空出世
🦓maven简介
maven工具是一款可以构建项目、管理项目中所需要的jar包以及自动下载其所依赖的jar包,同时具有项目编译、打包、生成自定义jar包、将打包好的jar包/war包安装到maven仓库中,可以在其他项目中调用。
官方语言:Maven 是 Apache 软件基金会的一个开源项目,是一个优秀的项目构建工具,它用来帮助开发者管理项目中的 jar,以及 jar 之间的依赖关系、完成项目的编译、测试、打包和发布等工作
🪀pom.xml文件(project object Model 项目对象模型)
Maven 管理的项目的根目录下都有一个 pom.xml 文件。pom.xml 文件指示 Maven 如何工作。 在 pom.xml
文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、 项目依赖的 jar、插件、编译选项等。 一旦在 pom.xml
文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下 载相应的构件

🪂maven工具安装步骤
两个前提:
必须先安装JDK,由于maven的底层实现是java,所以需要java的运行环境。
由于maven会下载很多插件故此需要良好的网络环境。
下载 maven 服务器
maven 官网:http:// maven.apache. org

点击 download 进行下载如下图

配置 maven (一变量二修改)
在系统环境中配置环境变量,在path中配置到Apache-maven文件的bin目录,配置成功后输入命令mvn -version
查看版本如下图:表示 maven 环境配置成功。
在 maven 的服务器解压的文件中找到 conf 文件夹下的settings.xml 文件进行修改,如下图所示

这里填自己创建的仓库(文件夹)路径
下面配置阿里云 maven 镜像仓库,下载速度更快
<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf>
</mirror>

🧸在idea中创建maven项目


关闭项目,重新点击创建新项目,




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

例如下载 servlet jar 包
在 Pom.xml 文件配置 jar 包信息,使用 maven 自动下载 jar 包管理 jar 之间的依赖
(这个是在</dependenci标签下的)
<dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.1</version>
</dependency>
标签注解
<type>:依赖项的 packaging 类型,默认是 jar;
<scope>:依赖项的作用范围,默认是 compile。各个取值及含义如下:
<compile>:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖
包会被拷贝到 war 包中的 lib 目录中。
<provided>:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web
容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包。
Maven 常用命令(可以在cmd窗口中来使用)
- compile 编译
- clean 删除 target
- package 打包(只打包不发送到本地仓库)
- install 把项目 install 到本地仓库
- test 运行测试代码


相关文章:
学习maven工具
文章目录 🐒个人主页🏅JavaEE系列专栏📖前言:🏨maven工具产生的背景🦓maven简介🪀pom.xml文件(project object Model 项目对象模型) 🪂maven工具安装步骤两个前提:下载 m…...
手机直播源码开发,协议讨论篇(三):RTMP实时消息传输协议
实时消息传输协议RTMP简介 RTMP又称实时消息传输协议,是一种实时通信协议。在当今数字化时代,手机直播源码平台为全球用户进行服务,如何才能增加用户,提升用户黏性?就需要让一对一直播平台能够为用户提供优质的体验。…...
【JavaEE基础学习打卡05】JDBC之基本入门就可以了
目录 前言一、JDBC学习前说明1.Java SE中JDBC2.JDBC版本 二、JDBC基本概念1.JDBC原理2.JDBC组件 三、JDBC基本编程步骤1.JDBC操作的数据库准备2.JDBC操作数据库表步骤 四、代码优化1.简单优化2.with-resources探讨 总结 前言 📜 本系列教程适用于JavaWeb初学者、爱好…...
2023/8/16 华为云OCR识别驾驶证、行驶证
目录 一、 注册华为云账号开通识别驾驶证、行驶证服务 二、编写配置文件 2.1、配置秘钥 2.2、 编写配置工具类 三、接口测试 3.1、测试接口 3.2、结果 四、实际工作中遇到的问题 4.1、前端传值问题 4.2、后端获取数据问题 4.3、使用openfeign调用接口报错 4.3、前端显示问题…...
【Java开发】 Mybatis-Plus 07:创建时间、更新时间自动添加
Mybatis-Plus 可以通过配置实体类的注解来自动添加创建时间和更新时间,这可以减轻一定的开发量。 1 在实体类中添加注解 public class User {TableId(type IdType.AUTO)private Long id;private String username;private String password;TableField(fill FieldF…...
解决vue2项目在IE11浏览器中无画面的兼容问题
解决vue2项目在IE11浏览器中无画面的兼容问题 背景介绍当前网上能找打的教程 背景介绍 当前项目面临其他浏览器都可以运行,但是在IE11浏览器中出现白屏的现象,F12后台也没有报错,项目月底也要交付了。当前项目的vue版本为2.6.11,…...
信号
信号也是IPC中的一种,是和管道,消息队列,共享内存并列的概念。 本文参考: Linux中的信号_linux中信号_wolf鬼刀的博客-CSDN博客 Linux系统编程(信号处理 sigacation函数和sigqueue函数 )_花落已飘的博客-CSDN博客 Linu…...
产品经理的真实薪资有多少?今天带你看看
作为产品经理,除了需要拥有扎实的技术背景和出色的产品设计能力,还需具备出色的领导力和商业敏感度。因此,产品经理的薪资也越来越成为人们关注的话题。那么,一般来说,产品经理的薪资水平如何呢? 薪资多少…...
《一个操作系统的实现》windows用vm安装CentOS——从bochs环境搭建到第一个demo跑通
vm安装CentOS虚拟机带有桌面的版本。su输入密码123456。更新yum -y update 。一般已经安装好后面这2个工具:yum install -y net-tools wget。看下ip地址ifconfig,然后本地终端连接ssh root192.168.249.132输入密码即可,主要是为了复制网址方便…...
线程Thread
文章目录 一、概念1、进程2、线程3、CPU与线程的关系4、并行、并发5、线程的生命周期 二、创建1、继承Thread2、实现Runnable接口3、实现Callable接口 三、API1、获取运行使用的线程2、唯一标识3、线程名4、优先级5、是否处于活动状态6、守护线程7、join1、API2、有无join对比 …...
如何使用CSS实现一个渐变背景效果?
聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 使用CSS实现渐变背景效果⭐ 线性渐变(Linear Gradient)⭐ 径向渐变(Radial Gradient)⭐ 写在最后 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 记得点击上方或者右侧链接订…...
初始C语言(7)——详细讲解有关初阶指针的内容
系列文章目录 第一章 “C“浒传——初识C语言(1)(更适合初学者体质哦!) 第二章 初始C语言(2)——详细认识分支语句和循环语句以及他们的易错点 第三章 初阶C语言(3)——…...
ArcGIS Pro技术应用(暨基础入门、制图、空间分析、影像分析、三维建模、空间统计分析与建模、python融合、案例应用)
GIS是利用电子计算机及其外部设备,采集、存储、分析和描述整个或部分地球表面与空间信息系统。简单地讲,它是在一定的地域内,将地理空间信息和 一些与该地域地理信息相关的属性信息结合起来,达到对地理和属性信息的综合管理。GIS的…...
RISC-V公测平台发布 · 数据库在RISC-V服务器上的适配评估
前言 上一期讲到YCSB在RISC-V服务器上对MySQL进行性能测试(RISC-V公测平台发布 使用YCSB测试SG2042上的MySQL性能),在这一期文章中,我们继续深入讨论RISC-V数据库的应用。本期就继续利用HS-2平台来测试数据库软件在RISC-V服务器…...
UE5.2 LyraDemo源码阅读笔记(五)输入系统
Lyra里使用了增强输入系统,首先知道增强输入系统里的三个类型配置。 一、Input Actions (IA): 输入操作带来的变量,与玩家的输入组件绑定,回调里驱动玩家行为。 二、InputMappingContext(IMC):…...
线段树详解——影子宽度
OK,今天来讲一讲线段树~~ 线段树是什么线段树的实现线段树的时间复杂度线段树的应用线段树的节点结构其他操作和优化例题——影子宽度输入输出格式输入格式输出格式 输入输出样例输入样例输出样例 例题讲解 线段树是什么 线段树( S e g m e n t Segmen…...
使用R语言绘制折线图
写在前面 昨天我们分享了使用Python绘制折线图的教程,跟着NC学作图 | 使用python绘制折线图,考虑到很多同学基本不使用Python绘图。那么,我们也使用R语言复现此图形。 此外,在前期的教程中,我们基本没有分享过折线图的教程。因此,我们在这里也制作一期关于折线图的教程。…...
无涯教程-Perl - wantarray函数
描述 如果当前正在执行的函数的context正在寻找列表值,则此函数返回true。在标量context中返回false。 语法 以下是此函数的简单语法- wantarray返回值 如果没有context,则此函数返回undef;如果lvalue需要标量,则该函数返回0。 例 以下是显示其基本用法的示例…...
【gitkraken】gitkraken自动更新问题
GitKraken 会自动升级!一旦自动升级,你的 GitKraken 自然就不再是最后一个免费版 6.5.1 了。 在安装 GitKraken 之后,在你的安装目录(C:\Users\<用户名>\AppData\Local\gitkraken)下会有一个名为 Update.exe 的…...
《Java Web程序设计》试卷03
《Java Web程序设计》试卷03 课程编码: 301209 适用专业: 计算机应用(包括JAVA方向) 注 意 事 项 1、首先按要求在试卷标封处填写你所在的系(部)、专业、班级及学号和姓名; 2、仔细阅读各类题目的回答要求,…...
通过curl命令直接测试Taotoken聊天接口的配置与排错指南
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过curl命令直接测试Taotoken聊天接口的配置与排错指南 基础教程类,为需要在无SDK环境或快速验证接口的开发者提供指导…...
Transmission密码安全加固:从配置文件到命令行实战
1. Transmission密码安全加固的必要性 最近在帮朋友排查一个奇怪的网络问题时,意外发现他路由器上的Transmission客户端竟然还在使用默认密码。这让我惊出一身冷汗——这相当于把家门钥匙插在门锁上啊!作为一款广泛使用的BT客户端,Transmiss…...
从零部署私有AI助手:igogpt项目实战与优化指南
1. 项目概述与核心价值最近在折腾AI应用部署的时候,发现了一个挺有意思的项目,叫igolaizola/igogpt。乍一看这个名字,可能会有点摸不着头脑,但如果你对开源AI模型部署和WebUI界面搭建感兴趣,那这个项目绝对值得你花时间…...
Docker Compose多项目管理利器:compose-skill配置与实战指南
1. 项目概述:一个被低估的Docker Compose技能管理工具如果你和我一样,日常工作中大量使用Docker Compose来编排本地开发环境、测试服务栈,甚至是一些轻量级的生产部署,那你一定遇到过这样的场景:手头同时维护着好几个项…...
CANN/asc-devkit截断函数API文档
Truncate(ISASI) 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcod…...
Go语言服务网格负载均衡策略
Go语言服务网格负载均衡策略 1. 负载均衡算法 package loadbalancetype LoadBalancer interface {Select([]string) string }type RoundRobin struct {index intmu sync.Mutex }func NewRoundRobin() *RoundRobin {return &RoundRobin{} }func (r *RoundRobin) Select(e…...
深入AMD Ryzen硬件调试:SMUDebugTool技术原理与高级应用指南
深入AMD Ryzen硬件调试:SMUDebugTool技术原理与高级应用指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: http…...
BetterGI:原神自动化助手终极指南 - 告别重复劳动,智能解放双手
BetterGI:原神自动化助手终极指南 - 告别重复劳动,智能解放双手 【免费下载链接】better-genshin-impact 📦BetterGI 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一…...
3步搞定完整网页截图:为什么说Full Page Screen Capture是你的最佳选择?
3步搞定完整网页截图:为什么说Full Page Screen Capture是你的最佳选择? 【免费下载链接】full-page-screen-capture-chrome-extension One-click full page screen captures in Google Chrome 项目地址: https://gitcode.com/gh_mirrors/fu/full-page…...
3分钟完成Windows与Office永久激活:智能脚本全攻略
3分钟完成Windows与Office永久激活:智能脚本全攻略 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统激活和Office办公软件激活而烦恼吗?KMS_VL_ALL_AIO智…...
