Maven —— 项目管理工具

前言

        在这篇文章中,荔枝会介绍如何在项目工程中借助Maven的力量来开发,主要涉及Maven的下载安装、环境变量的配置、IDEA中的Maven的路径配置和信息修改以及通过Maven来快速构建项目。希望能对需要配置的小伙伴们有帮助哈哈哈哈~~~


文章目录

前言

一、初识Maven

1.1 Maven作用:

1.2 Maven仓库分类

二、Maven的下载和环境配置

2.1 官网下载 

2.2 系统环境配置

2.3 测试

2.4 更改Maven中仓库的存储路径

三、IDEA中配置Maven

3.1 Maven构建工程步骤:

3.2 成果演示 

3.2 关于8080端口占用的解决方案

总结


一、初识Maven

        Maven其实是Apache的一个顶级项目,主要用来辅助我们快速搭建Java项目的环境并方便进行依赖管理。官网给出的定义是:Apache Maven 是一个软件项目管理和理解工具,基于项目对象模型 (POM) 的概念,Maven 可以通过中央信息来管理项目的构建、报告和文档。

1.1 Maven作用:

依赖管理:自动辅助我们将开发中常见的jar包进行管理并导入到工程中;

项目一键构建:Maven为使用者提供了一个标准化的Java项目结构,可以通过maven快速创建一个标准的Java项目

1.2 Maven仓库分类

Maven中的仓库主要分为三类: 

  • 本地仓库:位于自己计算机中的仓库,用来存储从远程仓库或中央仓库下载的插件和jr包;
  • 远程仓库:需要联网才可以使用的仓库,阿里有提供一个免费的maven远程仓库;
  • 中央仓库:在maven软件中内置一个远程仓库地址http://repo1.maven.org/maven.2,服务于整个互联网,它是由Maven团队自己维护,里面存储了非常全的jar包,它包含了世界上大部分流行的开源项目构件。

二、Maven的下载和环境配置

2.1 官网下载 

官网下载地址:

https://maven.apache.org/download.cgi

荔枝在这里选择的是最新版本的3.9.3,大家也可以根据需求自行选择,下载bin文件

将压缩包下载下来并解压缩放到一个非中文路径下。

2.2 系统环境配置

首先找到自己的安装路径并cv一下。

win10的话在系统-关于-高级系统设置-环境变量中进入环境变量的编辑并新建一个系统的环境变量MAVEN_HOME,变量值设置为之前cv的路径,点击确定保存 

 完成后再path中添加环境变量%MAVEN_HOME%\bin,点击确定并保存。

 这样子Maven的环境就配置好了嘿嘿嘿,是不是很简单呐~

2.3 测试

在命令行中输入如下命令测试一下Maven是否安装成功

mvn -v

 可以看到返回了maven的版本号和相应的JDK版本就表示配置成功。

 2.4 更改Maven中仓库的存储路径

需要知道的是:Maven仓库其实是Maven用来存储jar包的地方。

这一步其实不用配置也可以的,取决于你自己的需求。要配置本地仓库的路径我们需要进入Maven的安装路径并进入conf配置文件夹,找到settings.xml并修改本地仓库的配置

保存编辑结果即可。 


三、IDEA中配置Maven

3.1 Maven构建工程步骤:

首先新建一个项目并修改maven的配置

接着创建一个项目工程

一次选中File-new-module,打开并修改Maven项目中的配置和信息

3.2 成果演示 

完成创建后的工程文件的目录为:

运行一下index.jsp可以看到效果了

这样子也就可以看到在IDEA中正常使用Maven创建项目并运行的效果了哈哈哈,当然了大家也可以自行修改index.jsp文件。

3.2 关于8080端口占用的解决方案

荔枝在运行上述的jsp文件的时候出现8080端口被占用的情况,这时候需要检查了一下是哪个进程服务占用了8080端口,在命令行中写下检查端口占用的命令:

netstat -aon|findstr "8080"

        从上面的返回结果可以发现是TCP连接占用了原来默认的8080端口,这里荔枝查了一下解决方案,网上有直接kill掉这个进程的,也有在系统配置文件中修改该进程的占用端口,但荔枝觉得能不改变系统配置就不改,所以采用第三种方式:修改Tomcat的运行端口配置文件。首先进入Tomcat的安装路径并找到conf这个配置文件夹。选择server.xml文件并编辑,将原来的8080端口改成一个空闲的端口,这里荔枝就改成了7999端口。

接着在重新启动运行index.jsp文件就可以打开了!

如果有小伙伴对Tomcat的安装配置不太清楚的话可以看看荔枝的另外一篇文章:
https://blog.csdn.net/qq_62706049/article/details/131500175?spm=1001.2014.3001.5501


总结

        介绍完成Maven的下载安装、环境变量配置和在IDEA中构建工程项目的相关操作,荔枝还额外给出自己在配置中出现的问题以及相应的解决方案。学习一门新的技术总是需要从它的最基本环境搭建和配置学起,小伙伴们在学习的时候一定要耐心噢哈哈哈。

今朝已然成为过去,明日依然向往未来!我是小荔枝,在技术成长的路上与你相伴,码文不易,麻烦举起小爪爪点个赞吧哈哈哈~~~ 比心心♥~~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/3787.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity根据目标点的位置计算Input输入

当给一个目标点,如果目标直接去目标点我们可以直接让position指向目标点的position。 如果是转换输入呢? 举例:例如一个人物动画里有两个参数X和Y,X(- 1 ,1) 表示向左走和向右走,Y (-1 , 1) 向…

leetcode 101.对称二叉树

⭐️ 题目描述 🌟 leetcode链接:对称二叉树 思路: 这道题和 leetcode 100.相同的树 类似,是上一道的变形题。✨leetcode 100.相同的树 代码链接:【往期文章】leetcode 100.相同的树。这道题把根的左子树和右子树看作两…

回归预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入单输出回归预测

回归预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入单输出回归预测 目录 回归预测 | MATLAB实现基于BiGRU-AdaBoost双向门控循环单元结合AdaBoost多输入单输出回归预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.MATLAB实现基于B…

Vue列表排序

开始前先回顾一下sort排序用法&#xff1a; 定义一串数组arr&#xff0c;使用sort排序&#xff0c;会收到前后两个数据项设置两个参数a&#xff0c;b。 注意&#xff1a;a-b 是升序 b-a 是降序 a-b升序&#xff1a; <script>let arr [12,11,2,5,76,33]arr.sort((a,b…

园区能源控制管理系统

园区能源控制管理系统是一种能够实现对园区内能源消耗、供应和分配进行实时监控、管理和控制的系统。该系统通过对园区内各种能源设备的数据采集、处理和分析&#xff0c;为管理者提供实时的能源使用情况和数据分析&#xff0c;从而帮助管理者制定科学的能源管理策略和节能措施…

TMS FlexCel for VCL FMX Crack

TMS FlexCel for VCL & FMX Crack 强大、广泛和灵活的组件套件&#xff0c;用于VCL和FireMonkey的本地Excel报告、文件生成和操作。 FlexCel for VCL/FireMonkey是一套允许操作Excel文件的Delphi组件。它包括一个广泛的API&#xff0c;允许本地读/写Excel文件。如果您需要在…

华为云CodeArts Check IDE插件体验之旅

1 开发者的思考 近年来&#xff0c;ChatGPT的来临像一场突然出现的风暴&#xff0c;程序员是否马上被取代的担忧出现在媒体上了&#xff0c;作为软件开发小白&#xff0c;前不久我也陷入了这样的深思之中&#xff0c;但认真的想了下&#xff0c;ChatGPT就如自动驾驶一样&#…

NAS 问题处理记录

在解决自动配网的过程中&#xff0c;突然NAS不给力&#xff0c;偏偏这个时间找事情。上面这两个问题&#xff0c;说不复杂也不复杂&#xff0c;主要是自己在完全远程处理&#xff0c;很多不方便。当然少不了师弟的助攻&#xff0c;很感谢我的师弟帮忙&#xff0c;实验室的网络不…

ubuntu20.04系统安装使用labelme标注数据集

一、Anaconda的安装 请参考&#xff1a;MediapipeVSCodeAnaconda 实时检测手部关键点并保存视频_苦瓜汤补钙的博客-CSDN博客 二、Labelme的安装 1.打开终端创建虚拟环境 # 创建labelme的环境 conda create -n labelme python3.9 输入“y”&#xff0c;然后回车。 2.激活虚拟…

基于单片机的智能路灯控制系统人体感应灯光控制系统的设计与实现

功能介绍 以51单片机作为主控系统&#xff1b;LCD1602液晶显示当前时间、年月日、时分秒&#xff1b;按键看看有设置自动手动模式&#xff1b;3路红外探头用来感应当前3个区域是否有人&#xff1b;按键可以设置当前时间、开启和关闭教室灯光时间&#xff1b;在手动模式下&#…

【JavaEE面试题(九)线程安全问题的原因和解决方案】

多线程-初阶 4. 多线程带来的的风险-线程安全 (重点)4.1 观察线程不安全原因是 1.load 2. add 3. save 4.2 线程安全的概念4.3 线程不安全的原因最根本的是 操作系统对线程的调度是随机的★1. 修改共享数据&#xff08;多个线程修改同一个变量&#xff09;★2. 操作不是原子性★…

园区水电能源管理系统平台

园区水电能源管理系统平台是一种集成了水电能源监测、管理和优化功能的平台&#xff0c;旨在帮助园区管理者实现对水电资源的实时监测、合理节能和优化使用。随着能源需求的不断增长和能源价格的不断攀升&#xff0c;园区管理者面临着越来越大的节能减排压力。因此&#xff0c;…

IDEA中设置鼠标滚轮修改字体大小

IDEA中设置鼠标滚轮修改字体大小&#xff1f; 选择File--Settings--Editor--General&#xff0c;把 Mouse Control 前的对勾勾选 后点击 OK 即可。 勾选此设置后&#xff0c;增加 Ctrl 鼠标滚轮 快捷键来控制代码字体大小显 示。字体随时可以放大缩小~~可真好用呢~

OpenCv之图像轮廓

目录 一、图像轮廓定义 二、绘制轮廓 三、计算轮廓面积与周长 一、图像轮廓定义 图像轮廓是具有相同颜色或灰度的连续带你的曲线.轮廓在形状分析和物体的检测和识别中很有用 轮廓的作用: 用于图形分析物体的识别与检测 注意点: 为了检测的准确性&#xff0c;需要先对图像…

什么是 XSS 攻击,攻击原理是什么

什么是 XSS 攻击&#xff1f; XSS&#xff08;Cross-Site Scripting&#xff09;攻击是一种常见的 Web 安全漏洞&#xff0c;其攻击目标是 Web 应用程序中的用户&#xff0c;攻击者通过在 Web 页面中植入恶意脚本&#xff0c;从而实现窃取用户敏感信息、篡改用户数据等目的。 …

线程与信号

1. 进程内所有线程共享信号处理配置&#xff0c;故信号配置可以全部放在主线程内。 2. 每个线程有自己的信号掩码sigset_t&#xff0c;线程创建时继承创建时线程的信号掩码。 3. 触发信号处理函数按创建线程顺序分配给当前空闲线程&#xff0c;信号处理函数内是可以阻塞的。 …

云计算名词-IaaS,PaaS,SaaS

在学习分布式的过程中&#xff0c;知道了PaaS这个词儿&#xff0c;但是不知道是什么意思。从网上查询了之后&#xff0c;做了简单的了解。这里简单记录一下&#xff0c;方面之后的查阅。 IAAS&#xff08;Infrastructure-as-a-Service&#xff09;基础设施即服务 网上的定义是…

webpack相关

在 webpack < 4 的版本中&#xff0c;通常将 vendor 作为一个单独的入口起点添加到 entry 选项中&#xff0c;以将其编译为一个单独的文件&#xff08;与 CommonsChunkPlugin 结合使用&#xff09;。而在 webpack 4 中不鼓励这样做。而是使用 optimization.splitChunks 选项…

【MySQL】MySQL数据库的初阶使用

文章目录 一、MySQL服务的安装二、数据库基础1.什么是数据库&#xff1f;&#xff08;基于CS模式的一套数据存取的网络服务&#xff09;2. Linux文件系统和数据库的关系 && 主流数据库3.MySQL架构 && SQL分类 && MySQL存储引擎 三、MySQL操作库1.库结构…

ELK-日志服务【redis-配置使用】

目录 环境 【1】redis配置 【2】filebeat配置 【3】对接logstash配置 【4】验证 【5】安全配置&#xff1a;第一种&#xff1a;kibana-nginx访问控制 【6】第二种&#xff1a;在ES-主节点-配置TLS 【7】kibana配置密码 【8】logstash添加用户密码 环境 es-01,kibana 1…