maven classifer属性 、import scope、type pom
阅读数:140 评论数:0
跳转到新版页面分类
应用软件
正文
一、classifier属性作用
比如JSON-lib,其jar提供了两个版本的SDK
这个时候就必须使用classifier属性指定。
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
如果不定义classifier的话,maven就会找到不jar文件 。
二、import scope
maven的继承跟java一样,单继承,也就是说子model中只能出现一个parent标签,如果把所有依赖都放在parent模块中,其dependencyManagement中预定义太多的依赖,造成pom文件过长,而且很乱,可以通过import scope对依赖进行分类管理。
使用方式:
(1)将dependency分类,每一类建立单独pom文件 。
(2)在需要使用这些依赖的model中,通过dependencyManagement管理依赖,并import scope依赖。
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<!-- 重要:版本号要和父模块中预定义的spring boot版本号保持一致 -->
<version>${spring.boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
注意,scope=import只能用在dependencyManagement里面,且仅用于type=pom的dependency。
相关推荐
Nexus是maven仓库管理器,可以使用它在本地架构一个maven仓库服务器。
https://help.sonatype.com/en/download.html
可能需要借助梯子。
一、修改启
目的
在你的maven项目中创建一个Docker镜像。比方说,build过程可以为java服务输出一个可以运行该服务的Docker镜像。
步骤
有两种配置方式,一种是通过Dockerfile文件,一种
Maven中的dependencyManagement元素提供了一种管理依赖版本号的方式。在dependencyManagement元素中声明所依赖的jar包的版本号等信息,那么所有<stron
在pom.xml中使用distributionManagement将项目打包上传到nexus私服(maven的一种远程私有仓库)。
<pre class="language-markup
一、概述
repositories配置jar仓库,pluginRepositories配置插件仓库。
二、通过项目pom.xml配置
<repositories>
<repository>
dependencyManagement
只是声明依赖,并不实际引入,只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目继承该项。
denpende
一、前置知识
1、settings.xml中的proxy、server、repository、mirror
proxy
是服务器不能直接访问外网时需要设置的代理服务。
server
是服务器
在构建Maven项目的时候,如果没有进行特殊配置,Maven会按照 标准的目录结构查找和处理各种类型文件。
src/main/java和src/test/java
<p