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.mfbz.cn/a/37382.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

安全防御 --- SSL VPN

附:无线项目介绍 SSL VPN 有浏览器的设备就可以使用SSL,进而使用SSL VPN。无需担心客户端问题,所以SSL VPN也称为无客户端VPN。SSL VPN在client to lan场景下特别有优势。 实际实现过程(基于TCP实现) (1&…

MYSQL执行一条SELECT语句的具体流程

昨天CSDN突然抽风 我一个ctrlz把整篇文章给撤掉了还不能复原 直接心态崩了不想写了 不过这部分果然还是很重要,还是写出来吧 流程图 这里面总共有两层结构Server层 储存引擎 Server 层负责建立连接、分析和执行 SQL。MySQL 大多数的核心功能模块都在这实现,主要包…

Java-API简析_java.lang.ProcessBuilder类(基于 Latest JDK)(浅析源码)

【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://blog.csdn.net/m0_69908381/article/details/131729933 出自【进步*于辰的博客】 因为我发现目前,我对Java-API的学习意识比较薄弱…

什么是Docker

容器技术和虚拟机 虚拟机 和一个单纯的应用程序相比,操作系统是一个很重的程序,刚装好的系统还什么都没有部署,单纯的操作系统其磁盘占用至少几十G起步,内存要几个G起步。 在这台机器上开启三个虚拟机,每个虚拟机上…

Failed to connect to github.com port 443: Connection refused问题解决

文章目录 一、问题描述:Failed to connect to github.com port 443: Connection refused问题解决二、解决方法一:排查代理问题1、尝试重置代理或者取消代理的方式2、添加全局代理 三、解决方法二:排查DNS解析问题1、第一步:查找gi…

Redis解决Session共享问题

文章目录 一、集群Session共享问题二、Redis存储验证码和对象三、解决状态登录刷新问题 一、集群Session共享问题 session共享问题:多台Tomcat并不共享session存储空间,当请求切换到不同tomcat服务器时导致数据丢失的问题 tomcat可以进行多台tomcat进行…

蓝牙技术|低功耗蓝牙和LE Audio助力游戏设备行业发展

去年,蓝牙技术联盟官方宣布推出LE Audio,它以BLE为基础,旨在更好地兼顾音频质量和低功耗,以在多种潜在应用中显著增强用户体验。这在游戏行业中引起了轰动,由于其延迟显著降低,LE Audio在增强游戏体验方面展…

连接一个JavaScript文件

● 首先&#xff0c;本章我们会使用一个起始文件&#xff0c;代码如下 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0&qu…

unidbg或者java层解密方法IDEA中打包成jar包供python调用方法

一、导出jar包方法 &#xff08;1&#xff09;配置jar包参数 &#xff08;2&#xff09;创建生成jar包 成功生成&#xff01; 二、Python代码调用 import jpypejvmPath jpype.getDefaultJVMPath() d unidbg-android.jar # 对应jar地址 jpype.startJVM(jvmPath, "-ea&q…

apple pencil一代的平替有哪些品牌?苹果平板的触控笔

随着苹果Pencil系列的推出&#xff0c;平替电容笔在国内市场得到了较好的发展&#xff0c;随之的销量&#xff0c;也开始暴涨&#xff0c;苹果pencil因为价格太高&#xff0c;导致很多人买不起。目前市场上&#xff0c;有不少的平替电容笔&#xff0c;可以替代苹果的Pencil&…

opencv-06 使用numpy.array 操作图片像素值

opencv-06 使用numpy.array 操作图片像素值 **1&#xff0e;二值图像及灰度图像****利用item 读取某一个像素值****利用itemset 修改像素值****彩色图像numpy.arry 像素值操作** numpy.array 提供了 item()和 itemset()函数来访问和修改像素值&#xff0c;而且这两个函数都是经…

C基础day9(2023.7.11)

一、Xmind整理&#xff1a; 二、课上练习&#xff1a; 练习1&#xff1a;实现字符串逆置 #include <stdio.h> #include <string.h> #include <stdlib.h> int main(int argc, const char *argv[]) {char str[]"hello";char *pstr;char *qstrstrlen…

【Android知识笔记】系统进程(一)

Android 系统进程有哪些 先来一个整体结构图从宏观上理解Android系统的进程结构布局: 这里我们简单总结一下: 系统的第一个进程其实是0号进程(又叫swapper进程/Idle进程) 0号进程fork出了1号进程(init进程)和2号进程(kthreadd进程) 1号进程是所有普通用户进程的祖先,2号进程…

CSDN-AI小组2023-半年-研发总结

目录 1.丐版「大模型」&#xff0c;Proof of concept2. LLM和AIGC的各种综述3. 基于Embedding的应用&#xff0c;问答&#xff0c;AI编程4. 评论区的AI助手5. 结合AIGC的各种数据自动计算6. 个性化推荐的系统重构7. 基于AIGC的个性化博客创作鼓励8. 博客质量分V5: 可解释性计算…

vulnhub靶机渗透:PWNLAB: INIT

PWNLAB: INIT 靶机环境介绍nmap扫描端口扫描服务扫描漏洞扫描扫描总结 80端口目录爆破LFI利用 3306端口回到80端口文件上传 获得立足点横向移动提权总结参考 靶机环境介绍 https://www.vulnhub.com/entry/skytower-1,96/ 靶机IP&#xff1a;192.168.56.103 kali IP&#xff…

Linux信号机制

转自&#xff1a;深入理解Linux信号机制(1.0)_城中之城的博客-CSDN博客 一、信号机制概览 相信大家对信号并不陌生&#xff0c;很多人都用过kill命令或者CtrlC组合键杀死过进程&#xff0c;或者遇到过程序因为收到SIGSEGV信号而崩溃的。而对信号的基本原理&#xff0c;估计很…

含多类型充电桩的电动汽车充电站优化配置方法(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

cloud Alibab+nacos+gateway集成swaggerui,统一文档管理(注意点)

首先说明&#xff1a;本文只说整合注意点 效果图和功能参考链接 1.使用gateway访问nacos服务&#xff0c;503 在网关服务添加依赖即可解决 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign&…

一款玩法十分经典的RPG游戏《QQ宠物大乐斗2》

文章目录 1.介绍2.界面介绍2.1游戏主界面&#xff1a;2.2出城界面&#xff1a; 3.战斗系统3.1主动战斗3.2被动战斗 4.技能系统4.1主动技能4.2被动技能4.3五神技狂龙傲天拳惊天混元掌灵气寒霜指道威无极真气八卦迷踪腿 5.道具系统6.装备系统6.1装备品质6.2装备展示6.3装备获得方…

MySQL---表数据高效率查询(简述)

目录 前言 一、聚合查询 &#x1f496;聚合函数 &#x1f496;GROUP BY子句 &#x1f496;HAVING 二、联合查询 &#x1f496;内连接 &#x1f496;外连接 &#x1f496;自连接 &#x1f496;子查询 &#x1f496;合并查询 &#x1f381;博主介绍&#xff1a;博客名…
最新文章