Maven2的配置文件settingsWord格式文档下载.docx
- 文档编号:21331958
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:9
- 大小:22.10KB
Maven2的配置文件settingsWord格式文档下载.docx
《Maven2的配置文件settingsWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《Maven2的配置文件settingsWord格式文档下载.docx(9页珍藏版)》请在冰豆网上搜索。
pluginGroups/>
10<
servers/>
11<
mirrors/>
12<
proxies/>
13<
profiles/>
14<
activeProfiles/>
15<
/settings>
settings的内容可以在下面这些地方篡改:
1.${user.home}和所有其他的系统属性
2.${env.HOME}等环境变量
注意:
settins.xml中profiles下定义的属性不能被篡改。
配置细节:
简单的值
一半以上的顶级settings元素师简单的值,代表了一直处于活跃的构建系统的元素的取值范围。
localRepository>
${user.home}/.m2/repository<
/localRepository>
interactiveMode>
true<
/interactiveMode>
usePluginRegistry>
false<
/usePluginRegistry>
offline>
/offline>
9...
localRepository:
这个值是构建系统的本地仓库的路径。
默认的值是${user.home}/.m2/repository.如果一个系统想让所有登陆的用户都用同一个本地仓库的话,这个值是极其有用的。
interactiveMode:
如果Maven要试图与用户交互来得到输入就设置为true,否则就设置为false,默认为true。
usePluginRegistry:
如果Maven使用${user.home}/.m2/plugin-registry.xml来管理plugin的版本,就设置为true,默认为false。
offline:
如果构建系统要在离线模式下工作,设置为true,默认为false。
如果构建服务器因为网络故障或者安全问题不能与远程仓库相连,那么这个设置是非常有用的。
插件组
这个元素包含了一系列pluginGroup元素,每个又包含了一个groupId。
当一个plugin被使用,而它的groupId没有被提供的时候,这个列表将被搜索。
这个列表自动的包含了org.apache.maven.plugins和org.codehaus.mojo。
5...
pluginGroups>
pluginGroup>
org.mortbay.jetty<
/pluginGroup>
/pluginGroups>
例如,有了上面的配置,Maven命令行可以使用简单的命令执行org.morbay.jetty:
jetty-maven-plugin:
run,如下
mvnjettyrun
服务器
用来下载和部署的仓库是用POM中的repositories和distributionManagement元素来定义的。
但是某些配置例如username和password就不应该随着pom.xml来分配了。
这种类型的信息应该保存在构建服务器中的settings.xml中。
servers>
server>
id>
server001<
/id>
username>
my_login<
/username>
password>
my_password<
/password>
privateKey>
${user.home}/.ssh/id_dsa<
/privateKey>
passphrase>
some_passphrase<
/passphrase>
filePermissions>
664<
/filePermissions>
directoryPermissions>
775<
/directoryPermissions>
configuration>
<
/configuration>
16<
/server>
17<
/servers>
18...
19<
id:
这是Server的ID(不是登录进来的user),与Maven想要连接上的repository/mirror中的id元素相匹配。
username,password:
这两个元素成对出现,表示连接这个server需要验证username和password。
privateKey,passphrase:
与前两个元素一样,这两个成对出现,分别指向了一个私钥(默认的是${user.home}/.ssh/id_dsa)和一个passphrase。
passphrase和password元素可能在将来被客观化,但是现在必须以文本形式在settings.xml中设置。
filePermissions,directoryPermissions:
当一个仓库文件或者目录在部署阶段被创建的时候,就必须用到权限许可。
他们合法的值是三个数字,就像*nix中的文件权限,例如:
664,775.
如果你使用了一个私钥来登录server,那么password元素必须被省略,否则私钥将被忽视。
密码加密
一个新特征:
服务器password和passphrase加密已经被升到2.1.0+
镜像
mirrors>
mirror>
name>
PlanetMirrorAustralia<
/name>
url>
mirrorOf>
central<
/mirrorOf>
/mirror>
/mirrors>
14...
id,name:
唯一的镜像标识和用户友好的镜像名称。
id被用来区分mirror元素,并且当连接时候被用来获得相应的证书。
url:
镜像基本的URL,构建系统敬将使用这个URL来连接仓库,而不是原来的仓库URL。
mirrorOf:
镜像所包含的仓库的Id。
例如,指向Mavencentral仓库的镜像(http:
//repo1.maven.org/maven2/),设置这个元素为central。
更多的高级映射例如repo1,repo2或者*,!
inhouse都是可以的。
没必要一定和mirror的id相匹配。
代理
proxies>
proxy>
myproxy<
active>
/active>
protocol>
http<
/protocol>
host>
/host>
port>
8080<
/port>
proxyuser<
somepassword<
nonProxyHosts>
*|ibiblio.org<
/nonProxyHosts>
/proxy>
/proxies>
proxy的唯一标识,用来区别proxy元素。
active:
当proxy被激活的时候为true。
当申明的代理很多的时候,这个很有用,但是同一时间仅有一个被激活。
protocol,host,port:
代理地址protocol:
//host:
port的分散形式。
两个元素成对出现,提供连接proxy服务器时的认证。
nonProxyHosts:
这里列出了不需要使用代理的hosts。
列表的分隔符是proxy服务器想要的类型。
上面例子使用了pipe分隔符,逗号分隔符也比较通用。
配置文件
settings.xml中的profile是pom.xml中的profile的简洁形式。
它包含了激活(activation),仓库(repositories),插件仓库(pluginRepositories)和属性(properties)元素。
profile元素仅包含这四个元素是因为他们涉及到整个的构建系统,而不是个别的POM配置。
如果settings中的profile被激活,那么它的值将重载POM或者profiles.xml中的任何相等ID的profiles。
激活(activation)
activations是profile的关键,就像POM中的profiles,profile的能力在于它在特定情况下可以修改一些值。
而这些情况是通过activation来指定的。
profiles>
profile>
test<
activation>
activeByDefault>
/activeByDefault>
jdk>
1.5<
/jdk>
os>
WindowsXP<
family>
Windows<
/family>
arch>
x86<
/arch>
version>
5.1.2600<
/version>
/os>
18<
property>
mavenVersion<
20<
value>
2.0.3<
/value>
21<
/property>
22<
file>
23<
exists>
${basedir}/file2.properties<
/exists>
24<
missing>
${basedir}/file1.properties<
/missing>
25<
/file>
26<
/activation>
27...
28<
/profile>
29<
/profiles>
30...
31<
如果所有指定的条件都达到了,那么,activation就被触发,而且不需要一次性全部达到。
jdk:
在jdk元素中,activation有一个内建的,java版本检测。
如果检测到jdk版本与期待的一样,那么就激活。
在上面的例子中,1.5.0_06是满足的。
os:
os元素可以定义一些上面所示的操作系统特定的属性。
property:
如果Maven检测到相应的名值对的属性,那么,这个profile将被激活。
file:
如果给定的文件存在,或者不存在那么将激活这个profile。
activation并不是唯一激活profile的途径。
settings.xml中的activeProfile包含了profile的id。
他们也可以通过命令行来显式的激活,例如-Ptest。
如果你想查看在一个构建过程中有哪些profile会被激活。
就使用maven-help-plugin
mvnhelp:
active-profiles
属性(properites)
Maven的属性是值占位符,就像Ant中的属性。
如果X是一个属性的话,那么它的值在POM中可以使用${X}来进行任意地方的访问。
他们来自于五种不同的风格,所有都可以从settings.xml文件中访问到。
1.env.X:
使用“env.”前缀将会返回当前的环境变量。
例如${env.PATH}就是使用了$path环境变量。
2.project.X:
一个点“.”分割的路径,在POM中就是相关的元素的值。
例如:
project>
1.0<
/project>
就可以通过${project.version}来访问。
3.settings.X:
一个点“.”分割的路径,在settings.xml中就是相对应的元素的值,例如:
settings>
就可以通过${settings.offline}来访问。
4.Java系统属性:
所有通过java.lang.System.getProperties()来访问的属性都可以像POM中的属性一样访问,例如:
${java.home}
5.X:
被<
properties/>
或者外部文件定义的属性,值可以这样访问${someVar}
8...
properties>
user.install>
${user.home}/our-project<
/user.install>
/properties>
12...
15...
如果这个profile被激活,那么属性${user.install}就可以被访问了。
仓库(repositories)
仓库是Maven用来构筑构建系统的本地仓库的远程项目集合。
它来自于被Maven叫做插件和依赖的本地仓库。
不同的远程仓库包含不同的项目,当profile被激活,他们就会需找匹配的release或者snapshot构件。
repositories>
repository>
codehausSnapshots<
CodehausSnapshots<
releases>
enabled>
/enabled>
updatePolicy>
always<
/updatePolicy>
checksumPolicy>
warn<
/checksumPolicy>
/releases>
snapshots>
never<
fail<
/snapshots>
//snapshots.maven.codehaus.org/maven2<
/url>
layout>
default<
/layout>
/repository>
/repositories>
27<
pluginRepositories>
28...
/pluginRepositories>
32<
33...
34<
releases,snapshots:
这是各种构件的策略,release或者snapshot。
因了这两个集合,POM可以在单个的仓库中不依赖于另外一个的策略而改变当前策略。
一个人可能只下载snapshot用来开发。
enable:
true或者false,来标记仓库是否为各自的类型激活(release或者snapshot)。
updatePolicy:
这个元素指明了更新的频率。
Maven会比较本地POM与远程的时间戳。
可选的项目为:
always,daily,interval:
X,nerver。
checksumPolicy:
当Maven向仓库部署文件的时候,它也部署了相应的校验和文件。
可选的为:
ignore,fail,warn,或者不正确的校验和。
layout:
在上面描述仓库的时候,我们提到他们有统一的布局。
这完全正确。
使用这个来表明它是default还是legacy。
插件仓库(pluginrepositories)
仓库包含了两种重要类型的构件。
第一种是用来做其他构件依赖的构件,这是在中央仓库中的大多数插件。
另外一种类型的构件就是插件。
Maven的插件本身就是一种特殊的构件。
因此,插件仓库被从其他仓库中分离出来。
无论怎么说,pluginRepositories元素模块的结构与repositories模块很相似。
pluginRepository元素指向一个可以找到新插件的远程地址。
激活配置(ActiveProfiles)
1<
2xmlns:
3xsi:
4http:
5...
6<
activeProfile
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Maven2 配置文件 settings