`
hepu
  • 浏览: 55759 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

setting.xml设置说明

    博客分类:
  • SVN
阅读更多

maven2 比起maven1 来说,需要配置的文件少多了,主要集中在pom.xml和settings.xml中。
先来说说settings.xml,settings.xml对于maven来说相当于全局性的配置,用于所有的项目。在maven2中存在两个 settings.xml,一个位于maven2的安装目录conf下面,作为全局性配置。对于团队设置,保持一致的定义是关键,所以 maven2/conf下面的settings.xml就作为团队共同的配置文件。保证所有的团队成员都拥有相同的配置。当然对于每个成员,都需要特殊的 自定义设置,如用户信息,所以另外一个settings.xml就作为本地配置。默认的位置为:${user.dir} /.m2/settings.xml目录中(${user.dir} 指windows 中的用户目录)。
settings.xml基本结构如下:

xml 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<settings 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/xsd/settings-1.0.0.xsd">   


  <localRepository/>   
  <interactiveMode/>   
  <usePluginRegistry/>   
  <offline/>   
  <pluginGroups/>   
  <servers/>   
  <mirrors/>   
  <proxies/>   
  <profiles/>   
  <activeProfiles/>   
</settings>   



简单介绍一下几个主要的配置因素:
localRepository:表示本地库的保存位置,也就是maven2主要的jar保存位置,默认在${user.dir}/.m2/repository,如果需要另外设置,就换成其他的路径。
offline:如果不想每次编译,都去查找远程中心库,那就设置为true。当然前提是你已经下载了必须的依赖包。
Servers
在POM中的 distributionManagement元素定义了开发库。然而,特定的username和pwd不能使用于pom.xml,所以通过此配置来保存server信息

xml 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
 
<servers>   
   <server>   
     <id>server001</id>   
     <username>my_login</username>   
     <password>my_password</password>   
     <privateKey>$
{

usr.home}

/.ssh/id_dsa</privateKey>   
     <passphrase>some_passphrase</passphrase>   
     <filePermissions>664</filePermissions>   
     <directoryPermissions>775</directoryPermissions>   
     <configuration></configuration>   
   </server>   
 </servers>    



id:server 的id,用于匹配distributionManagement库id,比较重要。
username, password:用于登陆此服务器的用户名和密码
privateKey, passphrase:设置private key,以及passphrase
filePermissions, directoryPermissions:当库文件或者目录创建后,需要使用权限进行访问。参照unix文件许可,如664和775
Mirrors
表示镜像库,指定库的镜像,用于增加其他库

xml 代码

1
2
3
4
5
6
7
8
<mirrors>   
   <mirror>   
     <id>planetmirror.com</id>   
     <name>PlanetMirror Australia</name>   
     <url>http:
//downloads.planetmirror.com/pub/maven2</url>   


     <mirrorOf>central</mirrorOf>   
   </mirror>   
 </mirrors>   



id,name:唯一的标志,用于区别镜像
url:镜像的url
mirrorOf:此镜像指向的服务id
Proxies
此设置,主要用于无法直接访问中心的库用户配置。

xml 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
<proxies>   
   <proxy>   
     <id>myproxy</id>   
     <active>true</active>   
     <protocol>http</protocol>   
     <host>proxy.somewhere.com</host>   
     <port>8080</port>   
     <username>proxyuser</username>   
     <password>somepassword</password>   
     <nonProxyHosts>*.google.com|ibiblio.org</nonProxyHosts>   
   </proxy>   
 </proxies>   
 


id:代理的标志
active:是否激活代理
protocol, host, port:protocol://host:port 代理
username, password:用户名和密码
nonProxyHosts: 不需要代理的host
Profiles
类似于pom.xml中的profile元素,主要包括activation,repositories,pluginRepositories 和properties元素
刚开始接触的时候,可能会比较迷惑,其实这是maven2中比较强大的功能。从字面上来说,就是个性配置。
单独定义profile后,并不会生效,需要通过满足条件来激活。
repositories 和pluginRepositories
定义其他开发库和插件开发库。对于团队来说,肯定有自己的开发库。可以通过此配置来定义。
如下的配置,定义了本地开发库,用于release 发布。

xml 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<repositories>   
        <repository>   
          <id>repo-local</id>   
       <name>Internal 开发库</name>   
       <url>http:
//192.168.0.2:8082/repo-local</url>   


          <releases>   
            <enabled>true</enabled>   
            <updatePolicy>never</updatePolicy>   
            <checksumPolicy>warn</checksumPolicy>   
          </releases>   
          <snapshots>   
            <enabled>false</enabled>   
          </snapshots>   
          <layout>default</layout>   
        </repository>   
      </repositories>   
      <pluginRepositories>   
    <pluginRepository>   
    <id>repo-local</id>   
    <name>Internal 开发库</name>   
    <url>http://192.168.0.2:8082/repo-local</url>   


    <releases>   
            <enabled>true</enabled>   
            <updatePolicy>never</updatePolicy>   
            <checksumPolicy>warn</checksumPolicy>   
    </releases>   
    <snapshots>   
    <enabled>false</enabled>   
    </snapshots>   
    <layout>default</layout>   
    </pluginRepository>   
    </pluginRepositories>



releases, snapshots:每个产品的版本的Release或者snapshot(注:release和snapshot的区别,release一般是比较稳定的版本,而snapshot基本上不稳定,只是作为快照)

properties
maven 的properties作为placeholder值,如ant的properties。
包括以下的5种类型值:

env.X,返回当前的环境变量
project.x:返回pom中定义的元素值,如project.version
settings.x:返回settings.xml中定义的元素
java 系统属性:所有经过java.lang.System.getProperties()返回的值
x:用户自己设定的值
Activation
用于激活此profile

xml 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<activation>   
        <activeByDefault>false</activeByDefault>   
        <jdk>1.5</jdk>   
        <os>   
          <name>Windows XP</name>   
          <family>Windows</family>   
          <arch>x86</arch>   
          <version>5.1.2600</version>   
        </os>   
        <property>   
          <name>mavenVersion</name>   
          <value>2.0.3</value>   
        </property>   
        <file>   
          <exists>$
{

basedir}

/file2.properties</exists>   
          <missing>${

basedir}

/file1.properties</missing>   
        </file>   
      </activation>   
 


jdk:如果匹配指定的jdk版本,将会激活
os:操作系统
property:如果maven能检测到相应的属性
file: 用于判断文件是否存在或者不存在

除了使用activation来激活profile,同样可以通过activeProfiles来激活
Active Profiles
表示激活的profile,通过profile id来指定。

xml 代码

1
2
3
<activeProfiles>   
    <activeProfile>env-test</activeProfile> 指定的profile id   
  </activeProfiles>   

分享到:
评论

相关推荐

    eclipse maven setting.xml

    eclipse 集成maven 的配置文件 settings.xml ,配置了常用中央库镜像地址。只需配置本地仓库地址即可用。并对配置文件节点有中文说明

    Maven的阿里云镜像配置文件Setting.xml

    在使用Maven时,配置文件`settings.xml`扮演着核心角色,它定义了Maven的行为方式和个性化设置。 `Maven的阿里云镜像配置文件Setting.xml`主要关注的是Maven如何高效地下载依赖。在默认情况下,Maven会从中央仓库...

    settings.xml

    maven配置文件setting.xml的说明,包含了maven标签的含义详解,包含了各个地方的仓库的地址,归类大全。由于国内oschina的maven服务器很早之前就关了,所以maven下载大部分都是阿里云,文件中不仅包含了阿里云,还有...

    idea2019导入maven项目中的某些问题及解决方法

    问题二:设置Maven的Setting.xml文件 解决方法:首先查看Maven的conf目录下的Setting.xml文件,检查错误。然后,打开Maven的Setting.xml文件,检查Maven仓库的位置和阿里国内镜像的配置。 问题三:Maven仓库的位置...

    SmartGit使用说明

    创建私有仓库通常不在SmartGit客户端内完成,而是在Git服务提供商的网页上设置。但你可以使用SmartGit管理私有仓库,如克隆、推送和拉取代码。 总结: SmartGit作为强大的版本控制系统客户端,提供了便捷的图形化...

    自动定时发送邮件软件

    8.使用说明.txt 9.卸载服务.bat 安装步骤: 第一步:安装服务 运行“安装服务.bat”文件。(需要管理员权限) 第二步:修改配置文件 修改好配置文件AutoSendMail_Setting.xml。确保Access数据库连接正确,每个任务的...

    Maven笔记.doc

    3. setting.xml 说明: a. 参考《settings.xml 详解.xml》,了解即可; b. 实际应用中,经常使用的是、、、有限几个节点,其他节点使用默认值足够应对大部分的应用场景。 Maven 仓库: 1. 远程仓库: a. Maven ...

    maven4

    本文将深入探讨Maven的核心概念,包括配置远程库、理解`setting.xml`与`pom.xml`的详细信息,并给出几点关键的说明。 ### Maven核心概念 1. **依赖管理**:Maven通过读取`pom.xml`文件来管理项目的依赖关系,自动...

    API接口模板化校验服务

    1、编辑接口控制校验文件,参考testApi.xml. 2、将testApi.xml放在应用服务器某个目录下,该目录下只放置接口...5、CloudCheck对外提供API模拟报文生成、API在线字段说明、设置挡板报文应答等。具体参考SettingAPI。

    最新日志侧栏插件 for PJBlog.rar

    5. **install.xml** 和 **setting.xml** - 这两个文件可能包含了插件的安装信息和配置设置,XML是一种结构化数据存储格式,方便程序解析和读取。`install.xml`用于指导插件的安装过程,而`setting.xml`则可能储存...

    Android-自定义组合控件SettingItem

    2. **描述(Description)**:对设置项的简短说明,帮助用户理解其功能。 3. **开关(Switch)**:一个可切换的按钮,表示设置项的开启或关闭状态。 4. **分割线(Divider)**:在多个设置项之间添加分隔线,以提高...

    Nexus私服搭建步骤

    要将 Maven 项目部署到 Nexus 私服上,需要修改 Maven 项目的配置文件 setting.xml 和 pom.xml。 首先,在 setting.xml 文件中添加以下配置: ```xml &lt;id&gt;nexus-releases &lt;username&gt;admin &lt;password&gt;admin123 ...

    ExcelTOKml

    7. Setting.xml、User.xml:这些可能是配置文件,存储用户设置和个性化信息。 使用ExcelTOKml,用户可以轻松地将Excel表格中的经纬度数据导入,然后自定义输出Kml文件的样式和内容,例如设置点的图标、颜色、标签等...

    Maven权威指南 很精典的学习教程,比ANT更好用

    Maven权威指南 Authors Tim O'Brien (Sonatype, Inc.) , John Casey (Sonatype, Inc.) , Brian Fox (Sonatype, Inc.) , Bruce Snyder () , Jason Van Zyl (Sonatype, Inc.) , Juven Xu () Abstract ...

    游戏官网网站源码 游戏官网模版源码 远征游戏官网模版源码 可兼容各大主流浏览器

    模板安装说明: 1、从你的网站后台进入应用中心,找到你想安装的模板安装,页面会跳转到安装页面 2、模板安装成功后,后台进入界面——风格管理——把新安装的模板设为默认风格 3、后台——工具——更新缓存,...

    网站部署详细步骤

    WEB.CONFIG 主要是配置数据库和站点根目录,setting.xml 配置 GIS 应用服务系统的相关设置。 常见问题 如果选择发布为虚拟目录的形式,需要注意 WEB.CONFIG 里 FCK 控件引用的地址是否是相对目录。 超图安装和发布...

    Myeclipse配置maven环境搭建.docx

    3. 打开 D:\Java\apache-maven-3.0.5\conf 目录下的 setting.xml 文件,设置成我们创建的仓库路径 4. 输入命令:mvn help:system,验证仓库配置是否正确 五、Myeclipse 结合 Maven 快速配置搭建 Web 项目: 1. ...

    5Ucms留言插件UTF-8 编码 带电话邮件 修正

    8. setting.xml:设置文件,可能存储了插件的配置信息,如邮件通知的服务器设置等。 9. images:存放图片资源的文件夹,可能包含验证码图片或其他相关图标。 在实际应用中,5Ucms留言插件的安装和配置过程通常包括...

    Maven的安装与配置(保姆级)

    在IDEA中配置Maven,你需要进入设置(Settings)界面,搜索“maven”,然后修改"Maven home path"为Maven的安装目录,"User setting file"为`settings.xml`的路径,"Local repository"为你的本地仓库路径。...

Global site tag (gtag.js) - Google Analytics