Maven---依赖管理,项目构建工具

1.Maven安装和配置

1.1设置本地仓库

提前准备好仓库的位置,打开配置文件maven/conf/setting.xml

1.2配置阿里镜像源

在mirrors节点(标签)下添加阿里中央仓库镜像,把原本的镜像源注释掉,不要写在mirrors标签外

<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf>
</mirror>

1.3配置jdk版本(以17为例)项目构建

在profiles节点(标签)下添加jdk编译版本

<profile><id>jdk-17</id><activation><activeByDefault>true</activeByDefault><jdk>17</jdk></activation><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><maven.compiler.compilerVersion>17</maven.compiler.compilerVersion></properties></profile></profiles>

1.4在idea中修改Maven配置

2.Maven工程

2.1工程目录介绍

2.2项目构建

3.生命周期

Maven 的生命周期分为三个主要部分:默认生命周期清理生命周期站点生命周期

3.1 默认生命周期(Default Lifecycle)

默认生命周期包含了大部分 Maven 构建的过程,包括编译、测试、打包和部署。其主要阶段如下:

  • validate:验证项目是否正确且所有必要的信息都存在。
  • compile:编译源代码。
  • test:使用适当的单元测试框架对编译后的代码进行测试。
  • package:将编译后的代码打包成可分发格式(如 JAR 或 WAR)。
  • verify:运行任何检查以验证包是否有效且符合质量标准。
  • install:将包安装到本地 Maven 仓库,以供其他项目使用。
  • deploy:将包复制到远程仓库,以便其他开发人员和项目共享。

3.2 清理生命周期(Clean Lifecycle)

清理生命周期用于清除上一次构建的结果,主要阶段如下:

  • pre-clean:执行清理之前的工作。
  • clean:清理项目的输出(例如,删除 target 目录)。
  • post-clean:执行清理之后的工作。

3.3 站点生命周期(Site Lifecycle)

站点生命周期用于生成项目的文档和报告,主要阶段如下:

  • pre-site:执行生成站点之前的工作。
  • site:生成项目的站点文档。
  • post-site:执行生成站点之后的工作。
  • site-deploy:将生成的站点文档部署到服务器上。

4.基于IDEA 进行Maven依赖管理

通过定义 POM 文件,Maven 能够自动解析项目的依赖关系,并通过 Maven 仓库自动下载和管理依赖,从而避免了手动下载和管理依赖的繁琐工作和可能引发的版本冲突问题。

maven仓库信息官网 https://mvnrepository.com/

5.Maven依赖传递和依赖冲突

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

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

相关文章

6 款超实用的 Coze 插件,让你的智能体开发效率提升 200%

最近我一直在频繁使用 Coze 智能体&#xff0c;帮朋友和客户实现各种定制化需求。 Coze 不仅提供了强大的工作流编排能力和全面的功能节点&#xff0c;还有大量由开发者和平台上传的插件库支持。 对于智能体开发者来说&#xff0c;找到一款合适、好用的插件&#xff0c;真的能…

python构建flask服务用于视频文件的处理后返回

背景:一个改进的 Flask 服务示例,它接收一个 MP4 文件和一个名为 `style` 的参数,并将上传的 MP4 文件保存在服务器的本地,然后返回一个预先存在的 MP4 文件。 1. **安装 Flask**: ```bash pip install Flask ``` 2. **创建 Flask 应用**: 下面是一个简单的 Flas…

java学习技巧分享

学习Java编程语言是一个循序渐进的过程&#xff0c;需要耐心和持续的努力。以下是一些有助于提高Java学习效率的技巧&#xff1a; 1. 基础知识优先&#xff1a; - 在深入学习之前&#xff0c;确保你理解了基本的计算机科学概念&#xff0c;如数据类型、变量、控制结构&#xff…

【实用知识】Spring Boot 优雅捕捉异常的几种姿势

&#x1f449;博主介绍&#xff1a; 博主从事应用安全和大数据领域&#xff0c;有8年研发经验&#xff0c;5年面试官经验&#xff0c;Java技术专家&#xff0c;WEB架构师&#xff0c;阿里云专家博主&#xff0c;华为云云享专家&#xff0c;51CTO 专家博主 ⛪️ 个人社区&#x…

设计模式(二)

设计模式(二) 敏捷开发模式&#xff1a;Refactoring to Patterns 重构特点&#xff1a; 1. 静态 --------> 动态 1. 早绑定 -----------> 晚绑定 1. 继承 ----------> 组合 1. 编译时依赖 --------> 运行时依赖 1. 紧耦合 -------> 松耦合组件协作模式 通过…

JVM(HotSpot):GC之G1垃圾回收器

文章目录 一、简介二、工作原理三、Young Collection 跨代引用四、大对象问题 一、简介 1、适用场景 同时注重吞吐量&#xff08;Throughput&#xff09;和低延迟&#xff08;Low latency&#xff09;&#xff0c;默认的暂停目标是 200 ms超大堆内存&#xff0c;会将堆划分为…

华为云弹性云服务器无法登录远程操作

遇到的问题&#xff1a; 就是你在创建弹性云服务器的时候选择了没有子网的虚拟私有云&#xff0c; 你属于误删了虚拟私有云的子网&#xff0c;自己没有注意看 如果在华为云创建弹性云服务器时选择的虚拟私有云&#xff08;VPC&#xff09;没有配置子网&#xff0c;那么在尝试远…

压力测试指南-压力测试中的性能瓶颈定位与优化

压力测试中的性能瓶颈定位与优化 在当今快速迭代的软件开发环境中&#xff0c;确保应用能够承受高并发访问和大规模数据处理变得至关重要。压力测试作为评估系统极限能力的关键手段&#xff0c;不仅能揭示潜在的性能问题&#xff0c;还能指导我们进行针对性的优化。本文将深入…

【mysql 进阶】2-1. MySQL 服务器介绍

MySQL 服务器简介 通常所说的 MySQL 服务器指的是mysqld程序&#xff0c;当运⾏mysqld后对外提供MySQL 服务&#xff0c;这个专题的内容涵盖了以下关于MySQL 服务器以及相关配置的内容&#xff0c;包括&#xff1a; 服务器⽀持的启动选项。可以在命令⾏和配置⽂件中指定这些选…

异次元v4.0

萌次元商城系统基于异次元店铺系统3.0 全新重构&#xff0c;历时两年精心打磨&#xff0c;初心不改。我们采用纯原生PHP打造了一款极具潜力的个人创业型商城系统。数据库底层经过对hyperf/database 的深度优化&#xff0c;感谢hyperf开发团队提供的强大ORM组件。模版渲染引擎采…

嵌入式C语言字符串具体实现

大家好,今天主要给大家分享一下,如何使用C语言进行字符串操作与实现。 第一:字符串相关操作实现 复制函数五个基本要素: 头文件:#include <string.h> 函数原型:strcpy(char dest[],char src[]) -----string copy 功能:把src数组中\0之前的所有字符,连同‘\…

在xml 中 不等式 做转义处理的问题

对于这种要做转义处理&#xff0c;<![CDATA[ < ]]>

DevEco Studio的使用 习题答案<HarmonyOS第一课>

一、判断题 1. 如果代码中涉及到一些网络、数据库、传感器等功能的开发,均可使用预览器进行预览。 正确(True)错误(False) 错误(False)回答正确 2. module.json5文件中的deviceTypes字段中,配置了phone,tablet,2in1等多种设备类型,才能进行多设备预览。 正确(True)…

redis第152节答疑 redis源码分析String重要总结

redis的string类型&#xff0c;如果数字大于10000&#xff0c;就不去共享整数中去取&#xff0c;然后就变成了embstr或者raw&#xff0c;为什么不是new一个redisobject,并且编码为int 对于Redis的字符串类型&#xff08;String&#xff09;&#xff0c;当字符串表示的是一个整数…

讲一讲 kafka 的 ack 的三种机制?

大家好&#xff0c;我是锋哥。今天分享关于【K讲一讲 kafka 的 ack 的三种机制&#xff1f;】面试题&#xff1f;希望对大家有帮助&#xff1b; 讲一讲 kafka 的 ack 的三种机制&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Kafka的消息确认机制&…

15分钟学 Go 第 20 天:Go的错误处理

第20天&#xff1a;Go的错误处理 目标 学习如何处理错误&#xff0c;以确保Go程序的健壮性和可维护性。 1. 错误处理的重要性 在开发中&#xff0c;错误处理至关重要。程序在运行时可能会出现各种问题&#xff0c;例如文件未找到、网络连接失败等。正确的错误处理能帮助我们…

中间人攻击(https降级攻击)和iptables命令分析

中间人攻击 以下是一个简单的中间人攻击示例&#xff0c;结合 ARP 欺骗和流量修改&#xff1a; 1. 进行 ARP 欺骗 首先&#xff0c;使用 arpspoof 进行 ARP 欺骗&#xff0c;将受害者的流量重定向到攻击者的机器上&#xff1a; sudo arpspoof -i eth0 -t 172.29.144.50 172…

Electron调用nodejs的cpp .node扩展【安全】

Electron调用nodejs的cpp .node扩展【安全】 环境&#xff1a; electron: 30.1.1 nodejs: 20.14.0前言 Electron是一个非常流行的跨平台桌面应用框架&#xff0c;它允许开发者使用Web技术来创建原生应用。然而&#xff0c;当应用需要进行高性能计算或访问系统API时&#xff…

echarts5.2.2实现 水球图表

需求背景解决思路解决效果index.vue 需求背景 需要做一个水球echarts图表效果&#xff0c;却发现echarts5以上版本已移除liquidFill类型 echarts 图表集链接 解决思路 引入 echarts-liquidfill^3.1.0 解决效果 index.vue <!--/*** author: liuk* date: 2024-10-24* de…

SVN(Subversion)的介绍和使用

SVN&#xff08;Subversion&#xff09;介绍 SVN&#xff08;Subversion&#xff09;是一个开源的版本控制系统&#xff0c;用于跟踪和控制文件和目录的更改。与传统的版本控制系统如CVS不同&#xff0c;SVN支持原子提交&#xff0c;即一次提交包含多个文件的更改&#xff0c;…