首頁 > linux > jenkins做持續集成二

jenkins做持續集成二

2019年7月25日 發表評論 閱讀評論

上一篇文章完成了jenkins的裝和基本配置

新建一個maven的持續集成項目。

注意:maven命令我們在上文最后部分自動安裝,配置保存之后并不會立刻安裝maven,maven命令工具會在第一次構建maven項目是自動下載安裝。

新建項目


配置基本信息

配置源碼獲取方式為git

遇到的一個錯誤

 No valid crumb was included in the request

在jenkins 的Configure Global Security下 , 取消“防止跨站點請求偽造(Prevent Cross Site Request Forgery exploits)”的勾選或者使用代理的情況下勾選代理。(如下圖)

繼續,設置構建觸發條件,定時掃描構建

構建前后都可以執行特定的動作如shell腳本,這里演示就省略了。只填入構建命令clean package

報保存配置之后,點立即構建

jenkins就會在后臺開始自動構架,這里會顯示構建進度,構建完成后紅色表示失敗,藍色表示成功,點擊可以進去查看日志。

點擊console查看日志

如果執行錯誤可以通過日志查看原因,修改錯誤后,重新構建

可以看到前面三步有構建失敗,查看日志可以發現原因:一個是找不到pom.xml,另一是maven下載不了文件。pom文件需要從工程根目錄開始算,加上子文件夾路徑即可。

通過查看構建日志, maven報錯如下:

Failed to transfer Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.4.1.RELEASE from/to central (https://repo.maven.apache.org/maven2): Connect to repo.maven.apache.org:443 [repo.maven.apache.org/151.101.52.215] failed: Connection timed out (Connection timed out)
ERROR: Failed to parse POMs
org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs:
[FATAL] Non-resolvable parent POM for com.jege.spring.boot:spring-boot-hello-world:1.0.0.RELEASE: Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:1.4.1.RELEASE from/to central (https://repo.maven.apache.org/maven2): Connect to repo.maven.apache.org:443 [repo.maven.apache.org/151.101.52.215] failed: Connection timed out (Connection timed out) and 'parent.relativePath' points at no local POM @ line 24, column 10

構建失敗,是因為jenkins配置了代理,但是自動安裝的maven沒有設置代理,給maven配置代理之后構建成功。

maven代理配置方法:

檢查完畢之后,編輯~/.m2/settings.xml文件,代碼如下:添加代理配置如下:

<settings>
? ?...
<proxies>
? ? ? <proxy>
? ? ? ? ?<id>my-proxy</id>
? ? ? ? ?<active>true</active>
? ? ? ? ?<protocol>http</protocol>
? ? ? ? ?<host>192.168.10.117</host>
? ? ? ? ?<port>3267</port>
? ? ? ? ?<!--
? ? ? ? ?<username>shihuan</username>
? ? ? ? ?<password>123456</password>
? ? ? ? ?<nonProxyHosts>repository.mycom.com|*.google.com</nonProxyHosts>
? ? ? ? ?-->
? ? ? </proxy>
? ? </proxies>
? ?...
</settings>? ?

proxies下可以配proxy元素,如果你聲明了多個proxy元素,則默認情況下第一個被激活的proxy會生效。這里聲明 了一個id為my-proxy的代理,active的值為true表示激活該代理,protocol表示使用的代理協議,這里是http。當然,最重要的 是指定正確的代理服務器的ip和端口。

掃碼聯系我

加我微信

除非注明,本站文章均為: nginx.cn原創,轉載請注明本文地址: http://www.oeatvy.tw/5253.html

--完--

分類: linux 標簽: ,
  1. 本文目前尚無任何評論.
  1. 本文目前尚無任何 trackbacks 和 pingbacks.

网球冠军