工作以来,一直在用maven,也出现过一些比较奇怪的问题。
虽然只要花点时间,大部分问题都解决,但总感觉不踏实,所以稍微总结一下。
第一篇:当前博客
第二篇:结合具体案例分析:https://blog.csdn.net/qq_37855749/article/details/111048657
第三篇:以后时间补上,总结一下maven的构建流程以及基本命令。
需求推动着技术的发展,maven的出现必然是为了解决一些问题。
至于这些问题是什么 ,我想做过传统项目的人应该都能体会到。每当需要一个jar包时,都得去官网找,然后导入。
甚至出现套娃现象,我需要A的jar包,但是A依赖于B这个jar包,B依赖于C这个jar包。。。。。。
后来上手maven后,就再也没遇到过这种事了。
当然,jar包管理只是maven一部分功能的体现,它的项目构建能力同样强大。
https://maven.apache.org/download.cgi
如果想要全局使用mvn命令,则需要配置环境变量。
本地仓库,就是jar包从中央仓库(云端的)拉取下来后,存放的位置。
打开maven conf文件夹中的settings.xml文件
默认是在C盘的一个隐藏文件夹里,但一般我们会改一下。
改成其他盘任意存在的文件夹
mirrors结点可以改镜像,我们改成阿里云的镜像
aliyunmaven
*
阿里云公共仓库
https://maven.aliyun.com/repository/public
这是一个阿里提供的代理仓库,包含了maven的中央仓库。
如果你需要其他公开的仓库,可以去这个网站查查
https://maven.aliyun.com/mvn/guide
pom(Project Object Model),项目对象模型,是maven对于被管理项目的一个描述文件。
我们在开发过程中,一般之和它打交道。
我们先大致了解一下这些节点的基本作用,再通过一个实际案例详细说明。
官网上有一个二级节点的预览
4.0.0
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
组织名(公司名)、项目名称、版本。
这三个组合在一起,就是一个定位器,可以精确定位到一个全球唯一的项目。
默认情况下是jar包,
如果是web项目,如SSM,就需要打成war包。
SpringBoot两者都可以。
可以在这个节点里面配置dependency,
例如
redis.clients
jedis
3.4.0
当几个工程项目的依赖都差不多时,我们可以建一个父项目
将打包模式packaging设置为pom。
子项目通过parent引入父项目的配置。
很常用,子节点property。通过变量的形式,指定依赖版本。比较灵活。
配置插件的地方。
这样看标签的含义比较抽象,所以补充了一篇,通过具体的项目案例来分析每个标签的作用,由于篇幅原因,拆成了两篇
地址:
https://blog.csdn.net/qq_37855749/article/details/111048657