jenkins 构建项目

来源:互联网 发布:淘宝网买机票可靠吗 编辑:程序博客网 时间:2024/05/09 14:54

使用jenkins构建项目步骤:
1. 发布jenkins.war
第一种在tomcat下发布war
将jenkins.war 拷贝到/usr/local/tomcat/apache-tomcat-8.5.9/webapps下
cd ../bin
通过执行./startup.sh 启动tomcat服务。
在浏览器中通过http://192.168.2.107:8080/jenkins 访问。

第二种使用命令:java -jar jenkins.war
注意:jdk的版本一定1.7以上。
通过http://192.168.2.107:8080/ 即可访问到。

  1. 构建项目
    这里写图片描述

这里写图片描述

如果是第一次访问输入Repository URL会有红色提示,这时点击进去,输入用户名和密码即可即可。

这里写图片描述
选择构建步骤:
如果是linux下构建,选择Execute shell 。
如果是window下构建,选择Execute windows batch command

我选择在Execute shell时 , 会出现Execute shell command ,在此处输入linux命令。

这里写图片描述
保存之后返回面板
这里写图片描述

点击按钮“计划一次构建”,构建完成之后,点击项目lihy.可以看到构建历史了。
这里写图片描述

然后点击构建历史信息,可以查看“控制台输出”。
这里写图片描述

说明构建成功了。

  1. 访问项目
    cd /opt/lampp/htdocs/lihy 下,可以看到刚刚已经构建下来的项目信息了。
    这里写图片描述
    然后通过浏览器访问:http://192.168.2.107/lihy/test.html
    这里写图片描述

说明没有访问权限,需要修改权限。
chmod 755 lihy
chmod 644 test.html

在访问http://192.168.2.107/lihy/test.html 即可访问到项目信息了。

4.项目构建过程中遇到的问题:
这里写图片描述

由于jenkins所在的服务器系统时间和svn服务器的系统时间根本不一致,导致出错,更改完jenkins服务器时间后就解决了此问题。

5.Jenkins使用Subversion插件的一些注意事项:

jenkins 可以通过subversion插件完成与svn的集成,本来这个插件的使用没有什么难度,但是在最近的项目中却遇到如下一些问题:

  1. svn中有中文目录,导致jenkins页面出现乱码或者找不到库。

  2. 使用jenkins的时候会去不存在版本库中取文件,导致报错。

第一个问题是由于编码问题,首先要更改容器的字符集编码如更改tomcat中server.xml的connector的URIEncoding=’utf-8’。

这里写代码片Connector port=”8080” protocol=”HTTP/1.1”
connectionTimeout=”20000”
redirectPort=”8443” URIEncoding=’utf-8’这里写代码片

其次应该更改浏览器中字符集编码如更改chrome或者firefox中的字符集编码格式,由于svn服务器的字符集编码默认为utf-8,所以务必使这三者的字符集编码保持一致。当然最佳的方案是不要在svn中建立中文目录,一律使用英文,中文处理起来非常不方便。

关于第二个问题就更奇葩了,配置好svn后执行jenkins job构建信息始终是:

org.tmatesoft.svn.core.SVNException: svn: E195012: Unable to find repository location for ‘svn://se-repo.twi1.electronics.ruag.com/repos/exconbasis/tags/Release4.1/4.1.2.8’ in revision ‘5’842’
 但是当前的版本库根本不是‘5842’而是‘6874’,这让人非常纳闷,jenkins为什么会去这个库取文件,排查了一整天,总算找到问题,

https://issues.jenkins-ci.org/browse/JENKINS-3342中提到

when was the branch created? I’m guessing the error message may actually be
correct (that path did not exist at revision 12430), and the problem here is why
is it trying that revision?
can you check the clock difference between hudson server and svn server?  
由于jenkins所在的服务器系统时间和svn服务器的系统时间根本不一致,导致出错,更改完jenkins服务器时间后就解决了此问题。

现在还不能确定jenkins是否通过系统时间去计算svn服务器revision版本。

0 0
原创粉丝点击