當前位置:才華齋>計算機>java語言>

windows下JAVA敏捷開發環境搭建步驟

java語言 閱讀(7.83K)

程式設計開發環境搭建還是挺重要的,第一步是先要搭建環境,有了環境才能開展工作。本文我們來看看windows下JAVA敏捷開發環境搭建步驟。

windows下JAVA敏捷開發環境搭建步驟

整個軟體專案分為四個環境 開發本地環境、開發環境、測試環境、IDC環境。和傳統C++開發不一樣的模式是多了第一個開發本地環境。這是為什麼呢,因為目前大部分開發人員還是比較熟悉windows下開發。對於mac和linux下直接使用軟體並且開發的中國開發者還是少之又少,這套架構就這個現狀做出來的。如下是環境搭建架構圖:

從環境來說:

  一、開發本地環境、開發整合伺服器搭建。 前端開發者、後臺開發者。

前端開發用的最多的是photoshop和dreamweaver。在做psd之前大部分是不會協同開發的,只有整個檔案傳遞過來過去。html切割的時候可能就會多個人協同開發了。這個時候需要一個集中ftp伺服器、svn伺服器。svn伺服器用於儲存版本程式碼庫,用於儲存歷史修改的版本和開發人員協同。ftp伺服器適用於及時修改時儲存上傳到預覽伺服器進行預覽。看到這裡有人也許會問,我直接合並svn和ftp不行嗎?其實有這樣的問題,如果直接提交svn,後臺開發人員就會從svn看到。本來是前端的整合協同開發預覽,結果影響到後臺容易引起版本混亂。

後臺開發怎麼搭建環境?用eclipse在本地環境搭建開發環境,通過tomcat外掛或者jetty啟動除錯class、jsp。之前看過很多公司都通過打成war包釋出到整合環境再除錯。整合環境大家都去整合容易引起版本混亂。即使不釋出到整合環境,在本地就算修改個小的class檔案也要重啟 war包有點浪費時間。最好就是利用tomcat的熱部署,修改小功能直接生效。現在我們就是這樣做的,用maven管理jar包依賴,ant本地打包、拷貝包,用eclipse的tomcat外掛熱部署快速開發。等到所有功能開發好了。把分支版本釋出到開發環境進行整合測試。

開發環境涉及的軟體有:nexus 、maven、tomcat伺服器、mysql、ftp、jenkins、svn、jira、fisheye、eclipse、dreamweaver、photoshop、nginx。

軟體的作用:

nexus作為集中倉庫管理,因為每個工程如果都有一堆jar包,很難管理。加上svn上傳、分支、合併耗費網路頻寬、空間。如果有個地方把這些浪費空間的jar集中管理起來,所有工程合用豈不是很好。

maven是軟體生命週期、依賴管理,有了集中管理jar包,就需要有個東西把jar包倉庫和工程連線起來。

tomcat伺服器是本地開發使用和集中測試伺服器。

mysql就沒必要每個開發機器都裝一個了,放在一個開發環境就可以。

ftp作為前端開發上傳檔案使用。

jenkins是持續整合,開發和前端都把程式碼弄好,怎麼融合整合在一起測試呢,總需要有個人來把所有的`檔案合併在一起吧?這個軟體就起到這個角色,把所有檔案整合、編譯、打包、釋出到tomcat伺服器。如下圖:

svn程式碼版本管理,大家都知道協同作用。

jira用於需求、bug等管理。

fisheye用於程式碼統計、稽核等。

eclipse、dreamweaver、photoshop不用說啦。

nginx主要用於做虛擬主機和靜態資源管理。因為我們可能同時開發多個網站,nginx可以根據不同的域名轉發到不同的web伺服器。

  二、測試伺服器。開發、測試。

開發整合測試環境通過後,這個就可以轉測試了。通過持續整合,測試部署好環境就開始測試。測試環境同樣依賴於集中倉庫、maven、持續整合等軟體。也就是整合測試環境、開發整合環境、開發本地環境都是用的一套jar包,是不是很cool。如果測試不通過,就要轉回開發,開發好再轉測試。怎麼保證開發的質量和測試的質量,還有大家的協作性,這個過程涉及到軟體工程和績效考核,後面再說。測試通過一些測試,測試通過後就可以釋出到外網了。這個時候需要提供釋出列表、操作步驟、資料庫操作指令碼給到運維稽核,稽核通過後才能釋出。

怎麼釋出到外網IDC呢?運維可以根據釋出列表去操作,開發和前端一起等著熬夜啊熬夜。沒有效率!這裡提出了一個增量釋出版本的方式,通過釋出列表,我們的釋出程式會自動檢測到釋出的檔案和釋出的機器,釋出到對應的伺服器。如果釋出失敗了還可以回滾檔案,基本上是一鍵操作。未來還會把伺服器重啟、日誌輸出等整合起來。

  三、IDC伺服器。

外網的真實伺服器,後臺和前臺。大家能夠訪問到的網站伺服器。業務人員在版本釋出後檢視。整個流程就做好了。大家在每一次版本開發完了,可以很好的協同、開發、測試、釋出。