| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> 深入讲解Maven配置 -> 正文阅读 |
|
[Java知识库]深入讲解Maven配置 |
????????由于maven 使用上手很容易所以很多时候可以囫囵吞枣能够使用就可以了,由于作者最近在做的持续集成的代码扫描的时候,发现私有云里面大型工程maven依赖,如果没有弄清楚里面的配置复杂的项目很难在私有环境里面正常的编译过。下面作者根据自己的经验谈谈常用的配置的作用到底是什么。 首先说明maven配置都是那些配置 ?1. pom.xml?配置 ? ??????pom.xml 配置主要分为两类,一类是用于配置自己的实际依赖, 二类仅仅用于声明一些版本和仓库便于版本管理和发布。 ????????在我们java工程里面有一个pom.xml 这里面主要配置工程的依赖库,pom配置是可以被继承的,如果是父级依赖一般是做版本控制以及指定私有仓库的。如下图: 下图主要是展示父pom 主要作用是版本控制以及私有仓库指定。 ? ?重点来了: 上图repository的id的作用是啥(作者当时很是迷惑,可以乱写那要id干啥),这个id实际会和maven settings.xml 的配置文件里面的mirrors 配置有关。 2. maven 的settings.xml 下面重点讲一下settings的配置 如图settings 主要有mirrors servers 和profiles 三部分组成。 a. mirrors mirrors 主要作用是一个镜像代理,便于内外网厂库切换,或者单独配置内网使用。 如果pom中的repository的id能和mirrorOf的值关联上,那么url以mirror的为准,否则以repository中自己的url为准。
mirrorof 有三种值: * 代表 所有仓库请求都走这个配置的镜像代理。 ?central 默认是maven 的仓库,如果其它镜像访问不到(这里是服务访问不到而不是没有依赖包)。 其它: 比如test 、native-repo 这些关联的是pom里面配置的私有仓库id。 b. servers servers 里面的配置 如下:
?这个配置的作用是它关联pom里面配置私有仓库的id, 在推送依赖包的使用根据id作认证的。 c. profiles profiles 主要是配置全局私用仓库。就不详解了,和pom类似配置如下:
补充一个最重要的: 由于上文说到的父pom(版本控制) 子工程依赖就是依赖的父pom文件而不是jar包 如果只配置mirrors 是不能拉取父pom文件的,如果需要拉取父pom文件那么需要配置repository。 最后敬上参考地址: |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 22:14:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |