深入讲解Java Maven配置

网友投稿 268 2022-12-02

深入讲解Java Maven配置

目录首先说明maven配置都是那些配置1. pom.xml 配置2. maven 的settings.xmla. mirrorsb. serversc. profiles总结

首先说明maven配置都是那些配置

1. pom.xml 配置

pom.xml 配置主要分为两类,一类是用于配置自己的实际依赖, 二类仅仅用于声明一些版本和仓库便于版本管理和发布。

在我http://们java工程里面有一个pom.xml 这里面主要配置工程的依赖库,pom配置是可以被继承的,如果是父级依赖一般是做版本控制以及指定私有仓库的。如下图: 下图主要是展示父pom 主要作用是版本控制以及私有仓库指定。

重点来了:

2. maven 的settings.xml

下面重点讲一下settings的配置

如图settings 主要有mirrors servers 和profiles 三部分组成。

a. mirrors

mirrors 主要作用是一个镜像代理,便于内外网厂库切换,或者单独配置内网使用。

如果pom中的repository的id能和mirrorOf的值关联上,那么url以mirror的为准,否则以repository中自己的url为准。

test-nexus

*

sugon local repository

http://172.22.5.34:9996/repository/sugoncloud-public/

mirrorof 有三种值:

* 代表 所有仓库请求都走这个配置的镜像代理。

central 默认是maven 的仓库,如果其它镜像访问不到(这里是服务访问不到而不是没有依赖包)。

其它: 比如test 、native-repo 这些关联的是pom里面配置的私有仓库id。

b. servers

servers 里面的配置 如下:

nexus-releases

deployment

deployment123

这个配置的作用是它关联pom里面配置私有仓库的id, 在推送依赖包的使用根据id作认证的。

c. profiles

profiles 主要是配置全局私用仓库。就不详解了,和pom类似配置如下:

nexus-aliyun

public

Public Repositories

http://maven.aliyun.com/nexus/content/groups/public

true

true

public

Public Repositories

http://maven.aliyun.com/nexus/content/groups/public

true

true

补充一个最重要的: 由于上文说到的父pom(版本控制) 子工程依赖就是依赖的父pom文件而不是jar包 如果只配置mirrors 是不能拉取父pom文件的,如果需要拉取父pom文件那么需要配置repository。

最后敬上参考地址:

Maven settings.xml中私有仓库配置浅析 - 简书

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:BestCoder Round #49 ($) 1001 Untitled
下一篇:2015 Multi-University Training Contest 4
相关文章

 发表评论

暂时没有评论,来抢沙发吧~