Maven依赖冲突及一些基本概念

这两天在解决maven依赖冲突的问题,又不小心删掉了maven的repository。手忙脚乱maven的lifecycle命令瞎按一通,本来5分钟搞定,硬生生搞了小一个多小时!!!

狠狠地和maven打了个交道。

依赖冲突

idea自带的一个maven依赖关系图

很通透,但无从下手。我真看不懂

所以Maven Dependency Helper就是一个很好地东西了(IDEA插件)

树形结构!依赖关系明确!每个pom文件单独操作!

当然最终其实还是在https://mvnrepository.com/解决的

版本支持一目了然!

Maven的几个核心概念

1.pom:project object model maven把项目当作一个模型使用。pom.xml

2.约定目录结构:规定好的目录和文件位置

3.坐标:表示资源

4.依赖管理:管理依赖的jar文件

5.仓库管理:资源存放的位置

6.生命周期:maven工具构建项目的过程

7.插件和目标:maven工具就是插件

8.继承:用parent继承父工程的pom配置

9.聚合:多模块项目中,一个打包方式为pom的模块,通过本模块一键自动识别其他模块。reload本模块即可把多模块项目配置到一起

约定目录结构

HelloWorld/

----/src

---------/main //主程序的代码和配置文件

--------------/java //程序包和包中的java文件

--------------/resources //配置文件

---------/test //测试程序

--------------/java

--------------/resources

----/pom.xml //maven核心文件

Maven项目的构建过程,Maven的生命周期

项目构建是面向过程的

1.清理(clean):删除之前编译的代码

2.验证(validate)

3.编译(compile):javac一次编译一个,maven一次编译多个 (.java->.class)

4.测试(test可跳过):字面意思,多个测试(junit单元测试,命名为Test****)

5.报告 :生成测试结果文件

6.打包(package):jar包或者war包(是一个压缩文件)

7.安装(install):把打包后的压缩文件放到本机仓库

8.建站(site):生成项目的站点信息,位置在target的site(建议都去试一试,真的强)

9.部署(deploy):把程序安装好,可以执行,自动放到web容器里

依赖范围

1.compile(默认)

2.test(只对测试类生效)

3.provided(不参与打包和部署)

4.runtime(编译时无效)

5.system(与provided相同,需显示制定依赖路径)

原文地址:https://blog.csdn.net/ALAN_yongyi/article/details/121180332

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


本篇文章和大家了解一下怎么搭建maven私有仓库。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。在本篇文章中,我们将介绍如何搭建一个Maven...
今天小编给大家分享的是如何解决Maven依赖冲突,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。目...
这篇文章主要介绍了Maven仓库分类的优先级是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Maven仓库分类的优先级是什么文...
本篇内容主要讲解“Maven怎么实现自己的starter依赖”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Maven怎
本篇内容主要讲解“maven不能下载oraclejdbc驱动的问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大...
这篇文章主要介绍了怎么使用maven基本命令打包包名的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用maven基本命令打包包...
本篇内容介绍了“maven中profile如何使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧...
本文小编为大家详细介绍“Maven打包没有指定主类问题怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“Maven打包没有指定主类问题怎么解决”文章能帮助...
这篇文章主要介绍“maven怎么打包动态环境变量”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“maven怎么打包动态环...
今天小编给大家分享一下Maven离线模式打包的步骤是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考
本文小编为大家详细介绍“maven打包时候修改包名称带上git版本号和打包时间的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“maven打包时候修改包...
这篇文章主要讲解了“maven打包怎么指定jdk的版本”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“maven打...
这篇“Maven打包时怎么指定启动类”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读
这篇文章主要讲解了“怎么使用jenkins配置maven和JDK”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎
这篇文章主要介绍了maven中配置项目的jdk版本无效怎么排查的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇maven中配置项目的jdk...
今天小编给大家分享一下Maven提示jdk版本不正确怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考
本篇内容主要讲解“maven优缺点及使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“maven优缺点
这篇文章主要介绍“maven项目引入maven库没有jar怎么处理”,在日常操作中,相信很多人在maven项目引入maven库没有jar怎么处理问题上存在疑惑,小编查阅了各式资...
本篇内容主要讲解“怎么下载远程maven仓库的jar并手动放到本地仓库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学...
这篇文章主要介绍“maven私服搭建与使用的方法是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“maven私服搭建...