1. 程式人生 > >持續整合環境搭建

持續整合環境搭建

1.1下載maven

     版本:3.0.3

     下載地址:http://maven.apache.org/download.html

1.2安裝maven

     JDK:jdk1.6

 [1] 解壓縮apache-maven-3.0.3-bin.zip 到你想安裝的位置,如D:/maven3。

 [2]設定Maven系統環境變數,M2_HOME=D:/maven3/maven-3.0.3。

 [3]新增Maven bin目錄至系統環境變數PATH中, %M2_HOME%\bin。

 [4]確認Maven的安裝:

   cmd> mvn -version

ApacheMaven 3.0.3 (r1075438; 2011-03-01 01:31:09+0800)

Mavenhome: D:\maven3

Javaversion: 1.6.0_18, vendor: Sun Microsystems Inc.

Javahome: C:\jdk1.6\jre

Defaultlocale: zh_CN, platform encoding: GBK

OSname: "windows xp", version: "5.1", arch: "x86",family: "windows"

如果報錯Exception in thread"main" java.lang.NoClassDefFoundError,解決:

   刪除系統環境變數中M2_HOME和統環境變數PATH中, %M2_HOME%\bin,然後重新設定一遍就OK。 這是maven3.0.3的bug,當然如果用M2_HOME以外的變數名就不會出現這個bug

  Eclipse:Eclipse 3.7

 2.1外掛地址  

 [1]先安裝gef外掛 地址:http://download.eclipse.org/tools/gef/updates/interim/

    選擇3.7版本下載,maven外掛安裝的時候會依賴這個外掛

  [2]安裝svn外掛    地址:http://subclipse.tigris.org/update_1.6.x

  [3]maven外掛

     m2eclipse-core Update Site:  http://m2eclipse.sonatype.org/sites/m2e

     m2eclipse-extras Update Site:http://m2eclipse.sonatype.org/sites/m2e-extras

   注意 :必須兩個外掛都安裝,不安裝extras 外掛時,點選“run as server”來執行專案時會報錯:“the selected did notcontain any resources that can run on server maven project”

 2.2安裝時出現問題

    直接線上安裝maven2 會出現依賴外掛找不到的問題,無法安裝。必須先安裝gef 外掛後才能安裝m2eclipse-core 外掛,然而安裝m2eclipse-extras 外掛又依賴subclipse 外掛。所以,三個外掛的正確的安裝順序是:

 gef外掛->subclipse外掛->m2eclipse外掛

 m2eclipse-core外掛 ——依賴gef外掛

 m2eclipse-extras外掛 ——依賴subclipse外掛

安裝完成後,啟動eclipse

注意:安裝m2eclipse外掛後,重啟Eclipse老是提示

  Eclipse is running in a JRE, but a JDK is required  

-vm配置項必須在 –vmargs配置項前,是因為執行到-vmargs配置項已經選擇了一個預設的JVM了。

 所以在–vmargs前面加上這一句:  

-vm  D:/Java/jdk1.6.0_29/bin/javaw.exe

-vm

D:/dev/j2sdk6/bin/javaw.exe

-vmargs

-Dosgi.requiredJavaVersion=1.5

啟動後測試一切正常。

3.搭建區域網Mave伺服器

    Nexus是Maven資源倉庫管理器。如果在公司裡使用Maven,通常應該在本地架設一個Maven資源倉庫伺服器,在代理遠端資源倉庫的同時維護本地資源倉庫,以節省頻寬和時間,Nexus就可以滿足這樣的需要。此外,Nexus還提供了強大的資源倉庫管理功能,構件搜尋功能,它基於REST,友好的UI是一個extjs的 REST客戶端,它佔用較少的記憶體,基於簡單檔案系統而非資料庫。這些優點使其日趨成為最流行的Maven資源倉庫管理器。

3.1下載Nexus

從http://nexus.sonatype.org/downloads/下載最新版本的Nexus,Nexus有兩種版本:開源版本和專業版本。這裡我們下載開源版本。

下載介面如下圖所示:

3.2安裝Nexus

    安裝Nexus只有一個前提,就是必須先安裝JRE,Java 5或Java 6都可以(推薦使用Java 6)。

Nexus提供有兩種安裝方式,一種是內嵌Jetty的bundle繫結包,只要有JRE就能直接執行。第二種方式是WAR,只須簡單的將其釋出到web容器中即可使用。這裡我們重點講解第一種安裝方式。這種方式可以將Nexus(開源版本)作為一個單獨的伺服器來安裝。Nexus繫結有一個Jetty,Jetty監聽主機(0.0.0.0)上所有配置的IP地址並預設執行在埠8081。

    解壓nexus-oss-webapp-1.9.1.1-bundle.zip至任意目錄,如D:\nexus,然後配置環境變數${NEXUS_HOME},指向目錄D:\nexus\nexus-oss-webapp-1.9.1.1,此即為nexus的安裝目錄。

Nexus安裝目錄總有一個兄弟目錄,名為“sonatype-work”。這個目錄包含有所有資源庫和Nexus的配置資訊,這樣配置在Nexus安裝目錄之外,使得Nexus的版本更新更加容易。預設情況下,該目錄總是作為nexus安裝目錄的兄弟目錄,用來儲存資源內容和配置。如果想要改變該目錄的位置,可以在檔案${NEXUS_HOME}/conf/plexus.properties中修改nexus-work屬性。

3.3執行Nexus

進入到以下目錄位置:

D:\nexus\nexus-oss-webapp-1.9.1.1\bin\jsw

在這個目錄下,有許多Nexus執行的平臺可供選擇,如下圖所示:

    我用的是windows系統,所以選擇圖中紅框選中的平臺:windwos-x86-32。進到目錄以後,可以看到有許多批處理檔案。如下圖:

    如果是第一次執行,首先執行Installnexus.bat批處理程式,將其安裝為Windows服務,然後執行Startnexus.bat批處理程式,啟動Nexus伺服器。如下圖:

    當我們啟動Nexus時,我們是在啟動一個web伺服器,預設埠號為0.0.0.0:8081。Nexus執行在名為Jetty的Servlet容器中,它由一個名為“Tanuki Java ServiceWrapper”的本地服務包裝器啟動。可以通過配置這個service wrapper,將Nexus作為一個Windows服務或一個Unix daemon執行。

    啟動以後,Nexus將處於執行狀態並在8081埠上監聽為當前主機配置的所有IP地址(0.0.0.0)。要使用Nexus,首先開啟一個瀏覽器,鍵入URL:http://localhost:8081/nexus。(也可用127.0.0.1或其他配置的IP地址)。這時會開啟Nexus的初始歡迎介面,如下圖所示:

單擊頁面右上角的【log in】連結,會彈出登入對話方塊,預設的使用者名稱是“admin”,密碼是“admin123”。

如下圖所示:

登入後介面如下:

3.4配置Nexus

    以管理員身份登陸成功後,會看到左邊的導航欄增加了很多內容。在這裡,我們可以管理倉庫,配置Nexus系統,管理任務,管理使用者,角色,許可權,檢視系統的RSS源,管理及檢視系統日誌,等等。可以看到Nexus的功能十分豐富和強大。在本教程中,我們只介紹一些最基本的管理和操作。

[1]修改密碼

在管理介面左側欄,選擇【Security】|【Change Password】,會彈出密碼修改對話方塊。建議修改預設密碼,以保證安全。

[2]設定遠端資源庫索引

在Nexus中,使用者管理的資源庫有三種類型(virtual除外):

hosted,本地資源庫,通常我們會部署自己的構件到這一型別的資源倉庫。

proxy,代理資源倉庫,它們被用來代理遠端的公共資源倉庫,如maven中央資源倉庫。

group,資源倉庫組,用來合併多個hosted/proxy資源倉庫,通常我們配置maven依賴資源倉庫組。

Nexus代理三個重要的遠端資源庫:

   Maven Central資源庫、Apache Snapshot資源庫和Codehaus Snapshot資源庫。

每個遠端資源庫都包含有成千上萬的artifact,全部下來是不切實際的。所以Nexus中只維護它們的索引,使用這些索引來搜尋artifact,需要的時候再下載內容。不過預設情況下是禁止下載這些索引的,這就需要通過配置允許下載索引。步驟如下:

在左側欄中,選擇【Views/Repositories】|【Repositories】,右側會開啟使用者管理的資源列表。找到上述的三個遠端資源庫,在下方的屬性視窗,將“Download RemoteIndexes”設為“true”,並儲存修改。如下圖所示:

     在Nexus下載遠端資源庫索引檔案之後,我們就可以在本地搜尋遠端資源庫的所有構件(artifact)了。

[3]管理資源庫

在左側欄中,選擇【Views/Repositories】|【Repositories】,右側會開啟使用者管理的資源列表。

在最上面一欄,我們可以更新、新增和刪除資源庫。如下圖:

[4]管理Maven倉庫組

     Nexus中倉庫組的概念是Maven沒有的,在Maven看來,不管你是hosted也好,proxy也好,或者group也好,對我都是一樣的,我只管根據groupId,artifactId,version等資訊向你要構件。為了方便Maven的配置,Nexus能夠將多個倉庫,hosted或者proxy合併成一個group,這樣,Maven只需要依賴於一個group,便能使用所有該group包含的倉庫的內容。

     Nexus預定義了“Public Repositories”倉庫組,預設合併所有預定義的Release倉庫。

點選列表中的“Public Repositories”,然後選擇下方的"Configuration"Tab,在配置面板中,將右邊“Avaiable Repositories”中的資源庫移動到左邊的“Ordered GroupRepository”中即可,如圖:

[5]配置Maven使用本地Nexus

    要使用Nexus,我們需要配置我們的Maven檢查Nexus,而不再是公共資源庫。要達到這個目的,我們需要在~/.m2/settings.xml(Maven 3.0.3 為%MAVEN_HOME%\conf\settings.xml)檔案中編輯映象設定(mirror setting)

setting.xml配置如下

  <mirrors>

          <mirror>

      <id>Nexus</id>

      <name>Nexus Public Mirror</name>

      <url>http://localhost:8081/nexus/content/groups/public</url>

      <mirrorOf>central</mirrorOf>

    </mirror>

  </mirrors>

4. 搭建SVN伺服器

4.1安裝SVN

[1]軟體下載

下載Subversion伺服器程式。

官方網站的下載二進位制安裝檔案,來到二進位制包下載部分,找到 Windows NT, 2000, XP and 2003部分,然後選擇Apache2.0 或者Apache2.2,這樣我們可以看到許多下載的內容,目前可以下載Setup-Subversion-1.5.3.msi

下載Subversion的Windows客戶端TortoiseSVN。

TortoiseSVN是擴充套件Windows Shell的一套工具,可以看作Windows資源管理器的外掛,安裝之後Windows就可以識別Subversion的工作目錄。
官方網站是TortoiseSVN,下載方式和前面的svn伺服器類似,在Download頁面的我們可以選擇下載的版本,目前的最高穩定版本的安裝檔案為TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi

[2]伺服器和客戶端安裝

伺服器安裝,直接執行Setup-Subversion-1.5.3.msi ,根據提示安裝即可,這樣我們就有了一套伺服器可以執行的環境。

安裝TortoiseSVN,同樣直接執行TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi按照提示安裝即可,不過最後完成後會提示是否重啟,其實重啟只是使svn工作拷貝在windows中的特殊樣式生效,與所有的實際功能無關,這裡為了立刻看到好的效果,還是重新啟動機器。

[3]建立版本庫(Repository)

執行Subversion伺服器需要首先要建立一個版本庫(Repository),可以看作伺服器上存放資料的資料庫,在安裝了Subversion伺服器之後,可以直接執行,如:

svnadmincreate F:\Subversion\SVNdemo\repository

就會在目錄E:\svndemo\repository下建立一個版本庫。

我們也可以使用TortoiseSVN圖形化的完成這一步:
在目錄E:\svndemo\repository下"右鍵->TortoiseSVN->CreateRepository here...“, 然後可以選擇版本庫模式, 這裡使用預設即可, 然後就建立了一系列目錄和檔案。

[4]配置使用者和許可權

來到E:\svndemo\repository\conf目錄,修改svnserve.conf:

#[general]

#password-db = passwd

改為:

[general]

password-db= passwd

然後修改同目錄的passwd檔案,去掉下面三行的註釋:

#[users]

#harry = harryssecret

#sally = sallyssecret

最後變成:

[users]

harry= harryssecret

ally =sallyssecret

 在passwd檔案中,“=”前的字元就是使用者名稱,後面的就是密碼。還要注意“[users]”前面的註釋“#”一定要刪除掉。

4.2使用SVN

[1]執行獨立伺服器

在任意目錄下執行:

svnserve-d -r F:\Subversion\SVNdemo\repository 我們的伺服器程式就已經啟動了。注意不要關閉命令列視窗,關閉視窗也會把svnserve停止。

-d是demon守護程序,-r根目錄

[2]初始化匯入

來到我們想要匯入的專案根目錄,在這個例子裡是E:\svndemo\initproject,目錄下有一個readme.txt檔案:

右鍵->TortoiseSVN->Import...
在URL of repository輸入“svn://localhost/trunk”
在Import Message中輸入你的日誌資訊

完成之後目錄沒有任何變化,如果沒有報錯,資料就已經全部匯入到了我們剛才定義的版本庫中。

需要注意的是,這一步操作可以完全在另一臺安裝了TortoiseSVN的主機上進行。例如執行svnserve的主機的IP是133.96.121.22,則URL部分輸入的內容就是“svn://133.96.121.22/trunk”。

[3]基本客戶端操作

取出版本庫到一個工作拷貝: 

來到任意空目錄下,在本例中是E:\svndemo\wc1,執行右鍵->Checkout,在URL of repository中輸入svn://localhost/trunk,這樣我們就得到了一份工作拷貝。 

在工作拷貝中作出修改並提交: 

開啟readme.txt,作出修改,然後右鍵->Commit...,這樣我們就把修改提交到了版本庫,我們可以執行。

察看所作的修改: 

readme.txt上右鍵->TortoiseSVN->Show Log,這樣我們就可以看到我們對這個檔案所有的提交。在版本1上右鍵->Compare with working copy,我們可以比較工作拷貝的檔案和版本1的區別。

5.maven搭建eclipse工程

5.1構建Project

必備條件
在開始構建專案前,請確定您的eclipse + maven環境已經安裝正確。

demo模組結構示意圖

不同於我們之前可能習慣的建立一個大專案,包含mvc+service+dao的模式,為了讓專案能夠服務分離,水平擴充套件,我們需要將一個大專案拆分成幾個模組來開發。下面我們開始構建專案.

eclipse 新建專案流程截圖

點選【finish】後,主專案就已經建立完畢。

這裡將主專案建立為pom專案,而web,service,api建立為他的模組,這樣做的目的是為了統一管理,統一發布。

下面開始建立各個模組

當前建立的是web部分,工程型別需要選擇為 war。

重複上面的同樣步驟,分別再建立demo-comm, demo-service,不過記得,選擇型別為 【jar】

建立完畢後,整個工程包截圖如下

這裡需要注意,maven建立的war工程不會自動新增web.xml,需要手工建立WEB-INF,手動維護web.xml

注意:如果demo-web工程依賴demo-service工程,請手動新增依賴關係

5.2部署maven專案

[1]maven打包部署

pom.xml新增

<!-- maven打包部署 -->

<distributionManagement>

   <repository>

    <id>nexus-releases</id>

     <name>Nexus Release Repository</name>

     <url>http://localhost:8081/nexus/content/repositories/releases/</url>

   </repository>

   <snapshotRepository>

    <id>nexus-snapshots</id>

    <name>Nexus Snapshot Repository</name>

     <url>http://localhost:8081/nexus/content/repositories/snapshots/</url>

   </snapshotRepository>

</distributionManagement>

[2]maven的配置檔案 (maven3/config/setting.xml)

setting.xml新增

<servers>

                   <server>

                            <id>nexus-releases</id>

                            <username>admin</username>

                            <password>123</password>

                   </server>

                   <server>

                            <id>nexus-snapshots</id>

                            <username>admin</username>

                            <password>123</password>

                   </server>

</servers>

 [3]在eclipse中如圖操作

  選擇maven執行配置

使用maven的deploy命令

點選執行,完成部署

注意:maven自動釋出的jar,如果結尾時SANPSHOT自動釋出到快照倉庫,其他的預設到

      release倉庫

Jenkins,之前叫做Hudson,是基於Java開發的一種持續整合工具,用於監控秩序重複的工作,包括:

  1、持續的軟體版本釋出/測試專案。

  2、監控外部呼叫執行的工作。

6.1安裝jenkins

[1]下載地址

官網 http://jenkins-ci.org/

[2]安裝步驟

把jenkins.jar下載到Linux伺服器, 放入tomcat 的webapp下

啟動tomcat

待部署好後 進入jenkins管理頁面:

訪問http://localhost:8080 ,jenkins的主介面如下

注意:我們知道Jenkins通過master/slave來支援分散式的job執行,這裡的專案執行在master,即Jenkins所在的機器。

[1]建立Job任務

在ie中開啟http://localhost:8080, 單擊 新 job連結,新建job,且編譯job的配置如下:        

注意jenkins預設已經安裝了svn的plugin了。

點選ok

原始碼管理選擇svn 輸入svn 的url 如果設定了使用者名稱密碼 會有提示輸入。

如果沒有安裝maven,這裡也會提示安裝一下maven.點進去安裝一下就可以 。

配置好後進入如下頁面 點選立即構建

藍色為成功構建,紅色為失敗

進入專案的主頁面,點選build now連結進行build,build後可以在此主頁面上看到所有的build歷史:

然後還可以點選某個build的連結,檢視某個build的詳細日誌,如下:

釋出成功的話 之前專案啟用的cargo外掛會自動部署到web容器中,即可直接訪問

相關推薦

工作環境下Apache Jmeter + ANT +Jenkins 持續整合環境搭建(續)----Linux伺服器上搭建ant和jmeter

接上文https://blog.csdn.net/be_x_man/article/details/80997740 在本地配置好了jmeter和ant之後,還需要將指令碼放在jenkins上執行,所以也需要在jenkins所在的Linux伺服器上搭建jmeter和ant 配置過程基本上和W

工作環境下Apache Jmeter + ANT +Jenkins 持續整合環境搭建

最近工作需要在公司使用jmeter實現介面自動化測試,我就選取了jmeter+ant+jenkins,搭建環境過程如下 本地環境:win7 64位 雲桌面系統 1,本地電腦上JDK安裝,網上教程很多,這裡不再記錄 2,本地電腦上Apache jmeter下載與安裝 地址:http:/

JDK+Jmeter+Ant+Jenkins介面自動化持續整合環境搭建與執行

一、簡介 本文章主要是介紹介面自動化持續整合環境搭建以及測試例項,Apache JMeter是Apache組織開發的基於Java的介面和效能測試工具。 Apache Jmeter是一個100%的純java桌面應用,主要是針對web的壓力和效能測試,但後來擴充套件到其他測試領域。Jmeter可以用於測試

持續整合環境搭建

1.1下載maven      版本:3.0.3      下載地址:http://maven.apache.org/download.html 1.2安裝maven      JDK:jdk1.6  [1] 解壓縮apache-maven-3.0.3-bin.z

【Jenkins系列之一】Jenkins持續整合環境搭建完全指南

Jenkins是一個持續整合伺服器,能夠代替人進行很多複雜枯燥重複性的工作,是一個優秀的自動化構建工具。 安裝Jenkins 下載地址:http://jenkins-ci.org/,選擇Windows的native package進行下載。安裝過程與所有的windows安裝

Jenkins持續整合環境搭建

1部署Jenkins Jenkins部署很簡單,只需建立一個新應用,將Jenkins的war包部署進去,再分配好許可權就可以了。 1.1建立應用 建立一個新Nginx應用:jenkins.com 1.2部署war包 上傳jenkins.war到/jenkins.com

jenkins 持續整合環境搭建

持續整合 持續整合(CI)是一種軟體工程流程,將所有工程師對於軟體的工作複本,每天整合數次到共用主線(mainline)上。 依賴以下原則達到目標 維護一個程式碼庫自動建置讓建置時會自我測試所有人每天至少提交一次應該要建置每一個提交讓建置維持快速用線上環境的複本測試

docker+jenkins+maven+gitlab搭建整合java持續整合環境(待完成)

環境:虛擬機器下centos7   首先配置jdk: mkdir /usr/local/java 下載jdk1.8:官網:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133

安裝jenkins centos下搭建Jenkins持續整合環境(安裝jenkins)

1、安裝JDK yum install -y java 2、安裝jenkins 新增Jenkins庫到yum庫,Jenkins將從這裡下載安裝。 1 wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redh

Linux下搭建Git伺服器 Jenkins持續整合環境部署

1、安裝Git 見 Jenkins持續整合環境部署 第四節 2、建立Git使用者和使用者組 1 groupadd git 2 useradd git -g git 3、建立證書切換到git使用者建立證書 1 su git 2 cd /home/git 3 mkdir .ssh 4 c

Docker+Jenkins+Maven+SVN搭建持續整合環境

Docker+Jenkins+Maven+SVN搭建持續整合環境 環境拓撲圖(實驗專案使用PHP環境) 釋出流程圖 環境說明 系統:Centos 7.4 x64 Docker版本:18.09.0 Maven版本:3.6 Tomcat版本:8 JDK版本:1.8

aliyun centos下搭建Jenkins持續整合環境(安裝jenkins)

環境: 阿里雲輕量級伺服器 CentOS 7.3 安裝步驟: 1.安裝jdk(這裡安裝的openJDK) yum install -y java 2.安裝jenkins 新增Jenkins庫到yum庫,Jenkins將從這裡下載安裝。 wget -O /etc/

在滴滴雲上使用 Jenkins 搭建基於 GitHub 的持續整合環境

簡介 Jenkins 是一個可擴充套件的持續整合引擎,主要用於持續、自動地構建/測試軟體專案,還可用於監控一些定時執行的任務。 本文將介紹如何在滴滴雲上,使用 Jenkins 作為持續整合伺服器,Git 倉庫作為程式碼儲存庫,實現工程的自動構建、部署等過程。 安裝 以下均基於

搭建持續整合環境之——jenkins部署、安裝、配置

一、部署準備 1.遠端伺服器一臺:要求已安裝linux作業系統、tomcat、jdk; 2.從網上下載的jenkins.war包,推薦下載地址:http://Jenkins-ci.org/,或http://mirrors.jenkins.io/war-stable/ 二

Docker+Jenkins持續整合環境(1)使用Docker搭建Jenkins+Docker持續整合環境

來源:https://www.cnblogs.com/xiaoqi/p/docker-jenkins-cicd.html 本文介紹如何通過Jenkins的docker映象從零開始構建一個基於docker映象的持續整合環境,包含自動化構建、釋出到倉庫\並部署上線。 0. 前置條件 伺服器安

搭建hudson/jenkins+cppcheck+cpplint+cccc持續整合環境

1 Jenkins介紹Jenkins是基於Java開發的一種持續整合工具,Hudson是它的前身。Jenkins用於監控程式重複的工作,包括:1、持續的軟體版本釋出/測試專案。2、監控外部呼叫執行的工作。l  Jenkins的特性1、易於安裝-只要把jenkins.war部署

持續整合搭建Jenkins環境

直接進入正題,整合工具推薦使用Jenkins 這裡我們的環境需要用的工具有:JDK1.8 + Tomcat9.0 + Jenkins 1、下載安裝JDK1.8 1.瀏覽器輸入:http://www.oracle.com/technetwork/java/javase/downloads/

jenkins搭建robot的持續整合環境

Windows環境 1、本地需要安裝jdk環境 2、下載jenkins安裝檔案,直接一鍵安裝就行了 Linux安裝相對複雜點 1、首先解除安裝掉系統本省的java,因為centos自帶的是jdk1.6(太老了) 2、安裝最新的jdk版本 3、安裝

從零搭建Robot Framework+Jenkins持續整合環境

安裝Jenkins 系統環境:CentOS Linux release 7.3.1611 x86_64 GNU/Linux 安裝JDK Jenkins是基於Java開發的持續整合系統(CI),所以執行環境必須安裝JDK,安裝JDK的方法有很多種,有些Linux系統可能會自帶o

Jenkins 搭建C++持續整合環境

簡介 本文主要介紹如何通過 Jenkins 搭建 C++的持續整合環境。最後達到的效果是每天00:00 - 08:00之間構建、測試和打包一次工程。 開發環境為 VS2015,測試工具為 CppUnit,打包工具為 Inno Setup。 本例的 Jenk