在Redhat enterprise 6.5 的服务器上,为在gutub 上的 java mvaen项目构建一个持续集成环境,用到了Jenkins。因公司的服务器在内网,访问外网时要通过代理,所以为maven加上了代理,如果你的服务器可以直接访问外网,则可以去掉代理。.net 项目可参考 《在Redhat上为.Net 项目构建基于Jenkins + Github + Mono 的持续集成环境》
1. 安装 maven
wget -e "http_proxy=http://web-proxy.corp.hp.com:8080"http://mirrors.gigenet.com/apache/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz
su -c "tar -zxvf apache-maven-3.0.5-bin.tar.gz -C /opt/"
su -c "vi /etc/profile.d/maven.sh"
# Add the following lines to maven.sh
export M2_HOME=/opt/apache-maven-3.0.5
export M2=$M2_HOME/bin
PATH=$M2:$PATH
2. 设置代理
如果可以直接连外网,可以路过这步。
如果是公司内网,不设置maven proxy,会报下面的错误:
Waiting for Jenkins to finish collecting data[ERROR] Plugin org.apache.maven.plugins:maven-resources-plugin:2.5 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:maven-resources-plugin:jar:2.5: Could not transfer artifact org.apache.maven.plugins:maven-resources-plugin:pom:2.5 from/to central (
http://repo.maven.apache.org/maven2
): Connection to
http://repo.maven.apache.org
refused: Connection timed out -> [Help 1]
安装完后,用 mvn –version 查看安装信息:
然后进入到 maven 路径:
cd /opt/apache-maven-3.0.5/conf
修改设置:
sudo vi settings.xml
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<username>proxyuser</username>
<password>proxypass</password>
<host>web-proxy.corp.xx.com</host>
<port>8080</port>
<nonProxyHosts>127.0.0,1</nonProxyHosts>
</proxy>
3. Jenkins 里设置 mvaen
进入系统管理:
构建一个maven的项目:
设置build属性:
配置完成后,点击 “立即构建”,build 成功: