POM中的distributionManagement
元素定义了部署的仓库。然而,一些设置如安全证书不应该和pom.xml
一起分发。这种类型的信息应该存在于构建服务器上的settings.xml
文件中。
Example A.3. settings.xml中的Server配置
<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"> ... <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> ... </settings>
server下的元素包括:
- id
-
这是server的
id
(注意不是用户登陆的id
),该id
与distributionManagement
中repository元素的id
相匹配。
- username, password
-
这对元素表示服务器认证所需要的登录名和密码。
- privateKey, passphrase
-
和前两个元素类似,这一对元素指定了一个私钥的路径(默认是
/home/j2ee-hudson/.ssh/id_dsa
)以及如果需要的话,一个密语。将来passphrase和password元素可能会被提取到外部,但目前它们必须在settings.xml
文件以纯文本的形式声明。
- filePermissions, directoryPermissions
-
如果在部署的时候会创建一个仓库文件或者目录,这时候就可以使用权限(permission)。这两个元素合法的值是一个三位数字,其对应了*nix文件系统的权限,如664,或者775。