Maven的配置指南 

配置Maven

Maven配置发生在3个级别:

  • 项目 - 大多数静态配置发生在pom.xml中
  • 安装 - 这是Maven安装时发生的一次性的配置过程
  • 用户 - 这是Maven提供基于特定用户不同需求的配置,设置文件的默认位置是〜/ .m2 / settings.xml

Maven对不同配置需求分离非常明确 - 项目定义了适用于项目的信息,无论是谁构建,而其他人都定义了当前环境的设置。

注意:安装和用户配置不能用于添加共享项目信息 - 例如,在公司范围内设置<organization>或<distributionManagement>。

为此,您应该让您的项目继承自公司范围的父pom.xml。

您可以在$ {user.home} /.m2 / settings.xml中指定用户配置。一个完整的参考配置文件是可用的。本节将介绍如何进行一些常见配置。请注意,该文件不是必需的 - 如果找不到,将使用默认值。

Maven配置本地存储库

Maven允许用户配置中更改本地存储库的位置。默认值为$ {user.home} /.m2 / repository /。

<settings>

...

<localRepository>/path/to/local/repo/</localRepository>

...

</settings>

注意:本地存储库必须是绝对路径。

Maven配置代理

也可以在设置文件中指定代理配置。

有关更多信息,请参阅Maven使用代理指南

配置并行工件解析

默认情况下,Maven 2.1.0+将同时下载最多5个工件(来自不同的组)。要更改线程池的大小,请使用-Dmaven.artifact.threads启动Maven 。例如,要一次只下载单个工件:

mvn -Dmaven.artifact.threads=1 verify

您可能希望永久设置此选项,在这种情况下,您可以使用MAVEN_OPTS环境变量。例如:

export MAVEN_OPTS = -Dmaven.artifact.threads = 3

Maven安全和部署设置

要部署到的存储库是Maven的配置文件的<distributionManagement>部分的项目中定义的。但是,您无法在该项目中输入用户名,密码或其他安全设置。因此,您应该将服务器定义添加到您自己的设置中,其id与项目中的部署存储库的ID相匹配。

此外,某些存储库可能需要授权才能从中下载,因此可以以相同的方式在服务器元素中指定相应的设置。

需要哪些设置取决于您要部署的存储库类型。从Maven第一个版本开始,默认情况下仅支持SCP部署和文件部署,因此只需要以下SCP配置:

<settings>

...

<servers>

<server>

<id>repo1</id>

<username>repouser</username>

<!-- other optional elements:

<password>my_login_password</password>

<privateKey>/path/to/identity</privateKey> (default is ~/.ssh/id_dsa)

<passphrase>my_key_passphrase</passphrase>

-->

</server>

...

</servers>

...

</settings>

要加密这些部分中的密码,请参阅Maven加密设置

使用镜像存储库

可以在项目内声明存储库,这意味着如果您拥有自己的自定义存储库,那么共享项目的存储库可以轻松获得开箱即用的正确设置。但是,您可能希望在不更改项目文件的情况下为特定存储库使用备用镜像。有关更多详细信息,请参阅Maven镜像设置指南

简介

存储库配置也可以放入配置文件中。您可以拥有多个配置文件,其中一个配置为活动状态,以便您可以轻松切换环境。了解更多关于Maven在配置文件中介绍来创建个人资料

可选配置

使用上述配置,Maven将适用于大多数任务,但是如果您在单个项目之外有任何特定于环境的配置,则需要配置设置。以下部分涉及可用的内容。

设置

Maven有一个位于Maven安装和/或用户主目录中的设置文件,用于配置环境细节,例如:

  • HTTP代理服务器
  • 存储库经理位置
  • 服务器验证和密码
  • 其他配置属性

有关此文件的信息,请参阅Maven“ 设置”参考

安全

从Maven 2.1.0+开始,您可以加密设置文件中的密码,但必须先配置主密码。有关服务器密码和主密码的详细信息,请参阅Maven的“密码加密指南”

工具链

从Maven 2.0.9+开始,您可以使用特定版本的JDK构建项目,该项目独立于Maven运行的项目。有关更多信息,请参阅Maven的“使用工具链指南”

Maven的配置指南的更多相关文章

  1. JBoss7配置指南

    JBoss7配置指南   1.    jboss各主要版本特性... 3 1.1.     jboss4特性... 3 1.2.     jboss5特性... 5 1.3.     jboss6特性 ...

  2. Visual Studio Code 配置指南

    Visual Studio Code (简称 VS Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器.在我看来它是「一款完美的编辑器」. 本文是有关 VS Code 的特性介绍与配置指 ...

  3. 国内可用maven repository 配置

    国内可用maven repository 配置 发表于2016/1/4 23:08:04  10235人阅读 分类: maven 鉴于一些原因,从maven中央仓库download依赖包时,被各种折磨 ...

  4. MyEclipse中Maven的配置

    之前在MyEclipse这个IDE中配置Maven,完成配置后启动Maven时出现-Dmaven.multiModuleProjectDirectory system propery is not s ...

  5. [转载]SharePoint 2013测试环境安装配置指南

    软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...

  6. P6 EPPM 安装与配置指南 16 R1 2016.4

       关于安装和 配置P6 EPPM 本指南告诉你如何自动 安装和配置您的应用程序. 在您开始之前,阅读 先决条件 P6 EPPM配置 (7页). 安装P6 EPPM 您将使用 安装程序 (窗口) . ...

  7. P6 EPPM 16.1 安装和配置指南 1

    安装和配置指南下一topiccontents这些指南解释如何安装和配置数据库服务器,和P6 EPPM,模块:他们还提供在P6 EPPM能够解决所有模块的概述.标准指南帮助您配置和部署应用程序向导P6 ...

  8. P6 EPPM R16.1安装与配置指南(三)

    P6 EPPM R16.1安装与配置指南(三) 解压:V137390-01.zip 修改 D:\P6_R161\p6suite\database\dbsetup.bat   的行 SET JAR_FI ...

  9. P6 EPPM R16.1安装与配置指南(二)

    P6 EPPM R16.1安装与配置指南(一) http://www.cnblogs.com/endv/p/5634620.html P6 EPPM R16.1安装与配置指南(二) 环境变量配置 新建 ...

随机推荐

  1. iptables及其在路由器上的应用 (待完善)

    1. iptables基本定义 Table (表名) Explanation (注释) nat nat表的主要用处是网络地址转换,即Network Address Translation,缩写为NAT ...

  2. 查找->动态查找表->哈希表

    文字描述 哈希表定义 在前面讨论的各种查找算法中,都是建立在“比较”的基础上.记录的关键字和记录在结构中的相对位置不存在确定的关系,查找的效率依赖于查找过程中所进行的比较次数.而理想的情况是希望不经过 ...

  3. scala语法

    1:双重for循环(相当于j是i的内存循环):for (i <-0 to n; j <-10 to 20){ println(i);println(j)} 2:单层for循环:for (i ...

  4. javascript面向对象中继承实现?

    面向对象的基本特征有:封闭.继承.多态. 在javascript中实现继承的方法: 1.原型链(prototype chaining) 2.call()/apply() 3.混合方式(prototyp ...

  5. 批量查询"_mget"

    1.不同index的批量查询GET /_mget{ "docs":[{ "_index":"test_index1", "_typ ...

  6. webmin改https访问

    直接用yum安装: yum -y install openssl perl perl-Net-SSLeay perl-IO-Tty perl-Crypt-SSLeay 测试perl模块是是否安装成功, ...

  7. finecms如何批量替换文章中的关键词?

    Finecms批量替换文章关键词要怎么操作呢,比如把关键词A换为B?Finecms是免费开源无商业限制的内容管理系统,个人在维护,但二次开发很灵活,我们可以通过开发插件或数据库sql语句来操作,下面就 ...

  8. 一个canonical标签解决site不在首页的问题

    前段时间因为竞价的同事为了方便查看转化路径,在每个关键词都设置了不同的url,具体是直接在标准网址后面加#和参数,例如www.abc.com/#defgh,www.abc.com/#ijklmn,因为 ...

  9. what's the python之变量、基本数据类型

    what's the 变量? Python 中的变量赋值不需要类型声明. 变量在内存中创建,包括变量的标识,名称和数据. 变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 等号(=)用来给变量赋 ...

  10. 进程理论 阻塞非阻塞 同步异步 I/O操作

    1.什么是进程 进程指的是一个正在运行的程序,进程是用来描述程序执行过程的虚拟概念 进程的概念起源于操作系统,进程是操作系统最核心的概念,操作系统其它所有的概念都是围绕进程来的 2.操作系统 操作系统 ...