Maven实战settings.xml的配置

一、简介

settings.xml对于maven来说相当于全局性的配置,用于所有的项目,当Maven运行过程中的各种配置,例如pom.xml,不想绑定到一个固定的project或者要分配给用户时,我们使用settings.xml中的settings元素来确定这些配置。这包含了本地仓库位置,远程仓库服务器以及认证信息等。

settings.xml存在于两个地方:

1.安装的地方:$M2_HOME/conf/settings.xml

2.用户的目录:${user.home}/.m2/settings.xml

前者又被叫做全局配置,后者被称为用户配置。如果两者都存在,它们的内容将被合并,并且用户范围的配置优先。

平时配置时优先选择用户目录的settings.xml

下面是settings下的顶层元素的一个概览:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15


<
settings 
xmlns
=
"http://maven.apache.org/SETTINGS/1.0.0"

         
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"

         
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0

            
http://maven.apache.org/xsd/settings-1.0.0.xsd">

    
<
localRepository
/>

    
<
interactiveMode
/>

    
<
usePluginRegistry
/>

    
<
offline
/>

    
<
pluginGroups
/>

    
<
servers
/>

    
<
mirrors
/>

    
<
proxies
/>

    
<
profiles
/>

    
<
activeProfiles
/>

</
settings
>

二、简单值

localRepository:这个值是构建系统的本地仓库的路径。默认的值是${user.home}/.m2/repository.如果一个系统想让所有登陆的用户都用同一个本地仓库的话,这个值是极其有用的。

interactiveMode:如果Maven要试图与用户交互来得到输入就设置为true,否则就设置为false,默认为true。

usePluginRegistry:如果Maven使用${user.home}/.m2/plugin-registry.xml来管理plugin的版本,就设置为true,默认为false。

offline:如果构建系统要在离线模式下工作,设置为true,默认为false。如果构建服务器因为网络故障或者安全问题不能与远程仓库相连,那么这个设置是非常有用的。

三、PluginGroups(插件组)

这个元素包含了一系列pluginGroup元素,每个又包含了一个groupId。当一个plugin被使用,而它的groupId没有被提供的时候,这个列表将被搜索。这个列表自动的包含了org.apache.maven.plugins和org.codehaus.mojo。


1

2

3

4

5

6

7

8

9

10


<
settings 
xmlns
=
"http://maven.apache.org/SETTINGS/1.0.0"

          
xmlns:xsi
=
"http://www.w3.org/2001/XMLSchema-instance"

          
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0

            
http://maven.apache.org/xsd/settings-1.0.0.xsd">

    
...

    
<
pluginGroups
>

        
<
pluginGroup
>org.mortbay.jetty</
pluginGroup
>

    
</
pluginGroups
>

    
...

</
settings
>

四、Servers(服务器)

1. 定义jar包下载的Maven仓库

2. 定义部署服务器


1

2

3

4

5

6

7

8

9

10

11

12


<
servers
>

    
<
server
>

        
<
id
>tomcat</
id
>

        
<
username
>bruce</
username
>

        
<
password
>password</
password
>

    
</
server
>

    
<
server
>

        
<
id
>shiyue</
id
>

        
<
username
>admin</
username
>

        
<
password
>password</
password
>

    
</
server
>

  
</
servers
>

tomcat: 部署服务器

shiyue: Mave私服

五、Mirrors(镜像)

指定仓库的地址,则默认从指定的镜像下载jar包及插件


1

2

3

4

5

6

7

8

9


<
mirrors
>

                                                                                                

     
<
mirror
>

      
<
id
>mirrorId</
id
>

      
<
mirrorOf
>*</
mirrorOf
>

      
<
name
>Human Readable Name for this Mirror.</
name
>

      
<
url
>http://host:port/nexus-2.1.2/content/groups/public</
url
>

    
</
mirror
>

  
</
mirrors
>

六、Proxies(代理)

有时候你所在的公司基于安全因素考虑,要求你使用通过安全认证的代理访问因特网。这时就需要为Maven配置HTTP代理。


1

2

3

4

5

6

7

8

9

10

11

12


<
proxies
>

    
<
proxy
>

      
<
id
>optional</
id
>

      
<
active
>true</
active
>

      
<
protocol
>http</
protocol
>

      
<
username
>proxyuser</
username
>

      
<
password
>proxypass</
password
>

      
<
host
>proxy.host.net</
host
>

      
<
port
>80</
port
>

      
<
nonProxyHosts
>local.net|some.host.com</
nonProxyHosts
>

    
</
proxy
>

 
</
proxies
>

参考:http://maven.apache.org/settings.html

时间: 2024-10-10 10:37:00

Maven实战settings.xml的配置的相关文章

Maven项目settings.xml的配置

原文地址 http://www.cnblogs.com/DreamDrive/p/5571916.html 在Maven中提供了一个settings.xml文件来定义Maven的全局环境信息.这个文件会存在于Maven的安装目录的conf子目录下面,或者是用户家目录的.m2子目录下面.我们可以通过这个文件来定义本地仓库.远程仓库和联网使用的代理信息等. 其实相对于多用户的PC机而言,在Maven安装目录的conf子目录下面的settings.xml才是真正的全局的配置.而用户家目录的.m2子目录

Maven - settings.xml简易配置Demo

前言 这里贴一下settings.xml的一个简易配置demo,就是简单配置了:本地的仓库地址.阿里云镜像.指定使用jdk1.8进行编译. 这里使用的Maven是3.5.0版本的. 配置文件demo <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor lic

Maven的settings.xml文件结构之mirrors

Maven的远程库提供大量构件,供Maven项目直接下载使用.对于一个Maven项目,如果没有特别声明,默认使用Maven的central库,url如下: http://repo.maven.apache.org/maven2/ 但是这些远程库往往需要连接互联网访问,由于访问互联网的限制或安全控制的需要,在企业内部往往需要建立对远程库的镜像,即远程库的mirror.Maven引用镜像,而不是直接引用远程库,这需要在Maven的settings.xml文件中进行设置,示例如下: <mirrors>

Maven实战(七)settings.xml相关配置

一.简介 settings.xml对于maven来说相当于全局性的配置,用于所有的项目,当Maven运行过程中的各种配置,例如pom.xml,不想绑定到一个固定的project或者要分配给用户时,我们使用settings.xml中的settings元素来确定这些配置.这包含了本地仓库位置,远程仓库服务器以及认证信息等. settings.xml存在于两个地方: 1.安装的地方:$M2_HOME/conf/settings.xml 2.用户的目录:${user.home}/.m2/settings

maven的pom.xml文件配置详解

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd "> <!-- 父项目的坐标.如

maven设置------settings.xml文件学习

https://blog.csdn.net/tomato__/article/details/13025187 快速预览 maven的配置文件为settings.xml,在下面路径中可以找到这个文件,分别为:    ------ $M2_HOME/conf/settings.xml:全局设置,在maven的安装目录下:    ------ ${user.home}/.m2/settings.xml:用户设置,需要用户手动添加,可以将安装目录下的settings.xml文件拷贝过来修改.    两

maven中pom.xml中配置整理: groupId、artifactId、parent、dependency、dependencyManagement区别

1 <groupId>com.mycompany.commonmaven</groupId> 2 <artifactId>commonmaven</artifactId> 3 <version>0.0.1-SNAPSHOT</version> 4 <packaging>jar</packaging> 5 <name>common_maven</name> groupId 定义了项目属于哪

转发:分享一个快的飞起的maven的settings.xml文件

<?xml version="1.0" encoding="UTF-8"?> <settings> <!--该处需要改成自己的maven的本地仓库地址--> <localRepository>E:/Java/.m2/repository</localRepository> <mirrors> <mirror> <id>alimaven</id> <nam

(转)Maven的pom.xml文件配置使用

转载:http://www.cnblogs.com/GarfieldTom/p/3707160.html <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.ap