導航:首頁 > 源碼編譯 > jenkins跨庫編譯

jenkins跨庫編譯

發布時間:2022-08-02 22:04:38

1. 如何 編譯 jenkins 插件

系統管理--管理插件--高級--瀏覽-上傳插件即可 會提示重啟jenkins,--重啟後插件安裝成功 下載的插件是.zip格式的,改成.hpi後綴名即可

2. 如何在jenkins 構建 github工程

搭建持續集成首先要了解什麼是持續集成,帶著明確的目標去搭建持續集成環境才能讓我們少走很多彎路。持續集成(Continuous integration)簡稱CI,是一種軟體開發的實踐,可以讓團隊在持續集成的基礎上收到反饋並加以改進,不必等到開發的後期才尋找和修復缺陷。當然要明白的是持續集成環境的搭建也不是一勞永逸的,隨著軟體項目復雜度的增加,持續集成的環境同樣要加以維護以確保集成環境的可靠性。

持續集成的重要要素:1.統一的代碼庫。

2.CI伺服器

3.自動化測試和構建的腳本

4.Slaves

持續集成的流程:CI伺服器控制持續集成的整個過程,輪詢代碼庫更新,根據預定義的腳本進行項目的構建,伺服器將任務分配到Slave端。這就是整個持續集成的過程,我們需要根據我們的項目需求,制定好一個完善的持續集成方案,然後根據方案選擇CI伺服器和版本管理軟體,我們的項目選擇了Jenkins+Github的持續集成環境,這也是我要主要和大家講述的。

為什麼要選擇Jenkins?

Jenins是現在非常流行的持續集成CI伺服器,這與它的前身Hudson也有著很大的關系,Jenkins易於安裝,不需要資料庫的支持,直接通過Web界面進行配置,而且集成了RSS/Email的通知機制,支持分布式構建,具有豐富的插件,這些都是Jenkins相比其他持續集成伺服器的優勢所在。

對於版本控制軟體的選擇要看項目需要了,可能是SVN也可能是Git,一般來說Jenkins都有提供插件支持,下面講解一下Jenins+Github持續集成環境搭建的細節。

這個持續集成環境構建的主要流程就是Jenins會在後台運行,輪詢版本控制的存儲庫,當發現版本庫出現變更,就會通過預定義的構建腳本進行項目的構建,Jenkins會根據項目需求將構建的任務分配到Slave端。一般的項目構建過程主要分為自動化編譯和自動化測試兩個階段,這同樣是你腳本發揮作用的階段。
1.Jenkins安裝
進入Jenkins官方網站下載最新的Jenkins,Jenkins提供war包的下載和各種操作系統的安裝文件,選擇war包即可。
Jenkins的啟動方法有兩種:
第一種是使用tomcat直接打開,就是把jenkins.war放入tomcat下的 webapps目錄下,當啟動jenkins時,就會自動在webapps下建立jenkins目錄。然後再瀏覽器的地址欄輸入
另一種方法要確保系統中安裝了jdk,並且配置了環境變數,檢測方法就是在命令行輸入java回車後有多行的命令符提示。直接在命令行輸入java -jar jenkins.war即可啟動jenkins,默認會運行在8080埠,切換到瀏覽器的地址欄輸入http;//localhots:8080,localhost可以改成ip地址。
看到Jenkins的頁面說明jenkins已經部署成功了。2.插件安裝
在"系統管理->插件管理"下可以看到Jenkins預設安裝了CVS,Subversion,Maven和SSH,這些主要是版本控制的軟體的相應插件,不過我們使用的是GitHub進行版本控制,所以要在可選插件中選擇安裝Git plugin和GitHub plugin插件,安裝之後重新啟動就可以看到新的插件已經生效。3.環境配置
進入"系統管理->系統設置"設置Jenkins的相關參數。主要是設置Git和GitHub插件的參數,在Git下的Path to executable一欄添加本機的git.exe的路徑,在Git plugin下的添加本地Git的user.name和user.email的信息,在GitHub Web Hook下添加GitHub賬戶的相關信息。如果想要使用郵件的功能,需要在郵件通知的一欄添加SMTP伺服器和郵箱的相關信息,添加後點擊Test的按鈕測試一下能否正常發送郵件,這一功能可以在後面的項目中使Email Notification功能得以正常使用。

4.構建項目
點擊"新Job",輸入"任務名稱",選擇"構建一個自由風格的軟體項目",點擊"OK"。系統自動進入"任務配置"界面。5.配置構建方法
在GitHub project中輸入git地址。 在"源碼管理->Git"下的Repository URL輸入Repository的Git地址(PS:可以選擇分支)。

在"構建觸發器"中選擇"Build when a change is pushed to GitHub "和"Poll SCM ",這兩項的作用分別是當GitHub有版本庫更新時觸發Jenkins進行構建和定期檢查版本庫是否有更新,如果有更新則觸發Jenkins進行構建。這里要注意Schele語法,例如"*/2 * * * *"表示每隔2分鍾檢查一次。

點擊增加構建步驟,選擇Execute Windows batch command,並輸入
"%VS10COMNTOOLS%..\IDE\devenv.com" "%WORKSPACE%\Test.sln" /Build "Debug|Win32",devenv.com是MSVC提供的命令行構建工具,這里的"%VS10COMNTOOLS%..\IDE\devenv.com"為devenv.com的路徑,如果沒有配置響應的環境變數,構建的時候就會找不到路徑,所以可以用devenv.com的實際路徑代替。在"構建後操作"中可以添加發送郵件的相關信息。

點擊保存,項目的配置就完成了,點擊立即構建,Jenkin就會從github上將代碼clone下來,這里我在github上存放了一個HelloWorld的vs項目,所以我的命令行為"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com" "%WORKSPACE%\HelloWorld\HelloWorld.sln" /Build "Debug|Win32",然後自動編譯項目,如果構建成功會是藍色標記,如果構建失敗會是紅色標記。

構建完成後可以在項目中看到項目構建的具體信息,如工作區、變更集和每次構建的控制台輸出等。這就是一個基本的基於Jenkins和GitHub的持續集成環境的搭建。

3. 請問Jenkins如何配置自動或定時編譯

打開job的配置界面,在構建觸發器欄下有Poll SCM(定時檢查源碼變更並構建)和Build periodically(周期進行項目構建,不關心源碼是否變更)選擇,打開它們後面的問號,有很明確的介紹和實例

4. jenkins編譯打包需要多長時間

一般添加節點時指定jenkins的主目錄,構建的項目一般就在這個目錄下的workspace目錄下

5. jenkins怎麼編譯多個target

一直停留在這步
通過google,發現jenkins pull下來的代碼可能是找不到target,必須將target設置為shared。如下圖:將target的shared勾選上就可以了。

6. jenkins控制台輸出編譯錯誤怎麼回事

1、 設置jenkins所在伺服器環境變數,右鍵我的電腦→屬性→高級系統設置→環境變數,添加JAVA_TOOL_OPTIONS

2、修改Tomcat配置,進入apache_tomcat/conf文件夾下,編輯server.xml,在Connector port="8080"後面加入useBodyEncodingForURI="true"
<Connector port="8080" useBodyEncodingForURI="true" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />

3、啟動tomcat,運行jenkins,進入系統管理→系統設置,在全局屬性處勾選Environment variables,添加編碼環境變數LANG=zh_CN.UTF-8

7. jenkins git+maven 編譯怎麼知道編譯成功

1.通過Jenkins web頁面添加Git plugin

Manage Jenkins->Manage Plugins->Available中選擇Git Plugin安裝,

注意要填寫user name和 email地址,否則日後會碰到git tag的錯誤

2.在Jenkins使用的機器上創建Git用戶所需要的公鑰

具體步驟參考前面Git server文章

但是注意,要將最後生成的.ssh目錄下的公鑰和私鑰文件復制到/var/lib/jenkins/.ssh目錄下,否則git clone命令會報錯

3.修改jenkins目錄許可權

chmod -R 777 /var/lib/jenkins

4.現在可以通過web頁面創建一個項目Test,然後設置該項目使用Git作為版本管理。

並且設置repository路徑,比如我的:git@S1:cml.git

5.在build選項的pom文件指定你需要執行的pom.xml路徑

比如我的一個測試工程名叫client,是個maven工程,我設置為client/pom.xml

6.現在可以點擊左側的Build now進行測試

一切OK,則沒有錯誤日誌。在Build History中可以看到測試結果,有沒有錯誤。

7.Email發送設置

在Manage Jenkins->Configure System->Email Notification中,設置SMTP發送的基本信息,點擊Advanced,可以填寫用戶名和密碼。還有一個測試按鈕可以用來發送測試設置是否正確。

同時在Test項目中的Building Settings打勾選中E-mail
Notification,點擊右邊的問號,會出現幫助文檔,說明在四種情況下會發送email,填寫接受email的地址,然後故意將client代碼
修改到不能編譯通過。然後點擊Build now按鈕測試一下。果然收到email.

8.檢查代碼更新並編譯

可以通過Poll SCM來設置定時檢查編譯功能

比如*/5 * * * * 就是每隔5分鍾檢查一次,如果git倉庫中有更新,則執行build操作。

9.使用Maven加快下載速度

如我這篇文章所述,用可以避免下載過慢問題,也可以繞過公司內部外網限制問題。

Jenkins的.m2目錄路徑在:/var/lib/jenkins/.m2/

首先清空裡面所有的jar包,然後創建settings.xml文件,並編輯內容如下:

源碼列印?
<settings>
<mirrors>
<mirror>
<!--This sends everything else to /public -->
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url></url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<!--Enable snapshots for the built in central repo to direct -->
<!--all requests to nexus via the mirror -->
<repositories>
<repository>
<id>central</id>
<url></url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url></url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<!--make the profile active all the time -->
<activeProfile>nexus</activeProfile>
</activeProfiles>
</settings>

現在點擊build now測試一下,打開console output,看看命令行輸出結果,如果發現從S1下載jar包,就正確。和不用的比較了一下,節省了1分多鍾.

8. VS程序編譯通過,jenkins構建錯誤,無法識別新的語法,應該是 .NetFramework的問題,不知道應該如何處理

在/etc/profile配置java的環境變數: 你的mvn 項目是用哪個版本的jdk.,就要配置那個版本的jdk。 強制保存文件命令:w !sudo tee % 此時在進入項目執行:$ git pull origin master 繼續mvn clean install 一、可執行的JAR文件使用Maven 構建一個JAR 文件比較容易:只要定義項目包裝為「jar」,然後執行包裝生命周期階段即可。但是定義一個可執行JAR 文件卻比較麻煩。採取以下步驟可以更高效: 1、在您定義可執行類的 JAR 的MANIFEST.MF 文件中定義一個main類。(MANIFEST.MF 是包裝您的應用程序時 Maven 生成的。) 2.、找到您項目依賴的所有庫。 3、 在您的MANIFEST.MF 文件中包含那些庫,便於您的應用程序找到它們。您可以手工進行這些操作,或者要想更高效,您可以使用兩個 Maven 插件幫助您完成:maven-jar-plugin 和 maven-dependency-plugin

9. jenkins git怎麼自動編譯工程

當時也是花費了不少時間來配置Jenkins自動打包的問題,覺得還是需要記錄一下。 1.安裝Jenkins,這個很簡單,不需要多說。 2.下載Git Plugin,Gradle Plugin,Android Emulator Plugin(這個可以配置SDK路徑,覺得這個插件挺好)

10. jenkins可以實現多個slave編譯同一套代碼嗎

甲狀腺頤攪不嚴旅業

閱讀全文

與jenkins跨庫編譯相關的資料

熱點內容
用什麼工具製作安卓應用 瀏覽:484
單片機數碼管的代碼 瀏覽:775
第一款安卓手機是什麼牌子 瀏覽:394
java非同步web 瀏覽:270
51單片機讀tf卡 瀏覽:936
linux下獲取文件 瀏覽:318
加密文件電腦顯示無屏幕截取許可權 瀏覽:352
虛榮安卓用什麼充值 瀏覽:750
阿里雲沒有伺服器如何備案 瀏覽:706
python用戶特性總結 瀏覽:730
華為門鑰匙加密卡怎麼辦 瀏覽:921
南京解壓車要帶什麼 瀏覽:567
天堂2編譯視頻教程 瀏覽:397
伺服器沒有進程怎麼辦 瀏覽:789
阿里雲發布新物種神龍雲伺服器 瀏覽:64
數據結構遞歸演算法統計二叉樹節點 瀏覽:672
ev3怎麼編程 瀏覽:706
gzip壓縮教程 瀏覽:353
解壓模擬例子 瀏覽:989
流媒體伺服器如何實現視頻轉發 瀏覽:62