Hudson是用Java編寫的一個持續整合(CI)工具。它執行在Servlet容器中(例如Apache TomcatGlassFish)。它支援軟件組態管理(SCM)工具(包括CVSSubversionGitPerforce英語PerforceClearcase英語ClearcaseRTC英語Rational Team Concert),可以執行基於Apache AntApache Maven的專案,以及任意的shell指令碼和Windows批次處理命令。Hudson的主要開發者是川口耕介,開發期間就職於太陽電腦公司。Hudson是在MIT許可證下發佈的自由軟件

Hudson
範例:Hudson在瀏覽器中執行
目前版本
  • 3.3.3 (2016年2月15日;穩定版本)[1]
編輯維基數據連結
程式語言Java
作業系統跨平台
類型持續整合
許可協定MIT許可證
網站hudson-ci.org
數據截至2014年1月17日 (2014-01-17)

可以通過各種手段觸發構建。例如可以通過類似Cron的機制排程,可以在其他的構建已經完成時,以及可以通過一個特定的URL進行請求。

Hudson在2008年左右基本取代了CruiseControl英語CruiseControl和其他開源的構建伺服器(Build Server)。[2][3]在2008年5月的JavaOne大會上,Hudson成為「Duke選擇獎」開發人員解決方案分類的得主。[4]

甲骨文公司收購太陽電腦時,甲骨文公司宣佈其有意把Hudson的名字作為商標,並開始以商業軟件開發。2011年初,開發社區中的多數人(包括川口耕介)決定以Jenkins的名義延續該專案。甲骨文公司堅稱Hudson仍在繼續開發,而Jenkins是其分支;但Jenkins的開發者認為Hudson是其分支。

隨後,甲骨文公司對於Hudson專案喪失了興趣,最終在2012年底將其捐贈給了Eclipse基金會[5]。截至2013年11月,每天提交給了Jenkins的貢獻[6]要比Hudson的[7]多得多。

外掛程式 編輯

Hudson可通過一個外掛程式架構進行擴充。許多外掛程式已經公開,擴充了Hudson,使其遠遠超越了純粹的Java專案的構建工具。 對於大多數的版本控制系統和大的資料庫,有與Hudson整合的外掛程式可用。許多構建(build)工具都是通過他們各自的外掛程式提供支援。外掛程式還可以改變Jenkins的外觀,或添加新的功能。

構建時可以生成各種格式的測試報告(JUnit是內建支援的,別的格式則需通過外掛程式)。Hudson可以顯示報表,生成趨勢圖,並在圖形化介面中呈現它們。

Hudson——Jenkins的分裂 編輯

在2010年11月,就由誰主導Hudson[需要解釋][8]該專案的主要貢獻者和甲骨文公司之間展開談判,儘管在多個方面達成一致,爭議集中在對「Hudson」名字本身的控制上。甲骨文公司聲明對Hudson的名字擁有權利,並在2010年12月初申請將其註冊為商標(在2011年10月25日獲得商標權)[9]。因此,2011年1月11日,有人提議將專案名稱從「Hudson」變更為「Jenkins」。[10]2011年1月29日,社區投票以壓倒多數批准通過該提案,建立Jenkins專案。[11]2011年2月1日,甲骨文公司表示,繼續與社區中的其他人合作,延續Hudson的開發。[12]

移交給Eclipse基金會 編輯

2011年5月3日,Eclipse基金會與Hudson的主要提交者、甲骨文公司、Sonatype英語Sonatype和其他的社區支持者發出了正式的提議,將Hudson(包括核心代碼和存在問題的商標)轉交給Eclipse基金會。[13]Hudson的創始人川口耕介表示甲骨文公司此舉是在考驗Jenkins。「當我們與甲骨文公司的談判找到一個中間地帶時,他們說得很清楚,他們不打算放棄對Hudson商標的控制。但這一舉動[14]表明他們清楚地認識到甲骨文公司無法使Hudson專案跟上Jenkins專案。」 [15]2012年1月24日,Eclipse宣佈把Hudson 3列入Eclipse基金會。[16]

參見 編輯

參考文獻 編輯

  1. ^ "Hudson 3.3.3 Release is now available"; 作者姓名字串: Duncan Mills; 出版日期: 2016年2月15日.
  2. ^ Dan Dyer. Why are you still not using Hudson?. [2008-05-21]. (原始內容存檔於2012-04-26). 
  3. ^ What is the difference between Hudson and CruiseControl for Java projects?. Stack Overflow. [2011-01-17]. (原始內容存檔於2010-09-06). 
  4. ^ 2008 JavaOne Conference: Duke's Choice Awards Winners for 2008. [2008-05-21]. (原始內容存檔於2012-04-26). 
  5. ^ Hudson. Eclipse Foundation. [2014-07-26]. (原始內容存檔於2014-07-27). 
  6. ^ Commits·jenkinsci/jenkins. GitHub. [2014-07-25]. (原始內容存檔於2019-02-16). 
  7. ^ Hudson Core. Eclipse基金會. [2014-07-25]. (原始內容存檔於2014-04-21). 
  8. ^ Who's driving this thing?. [2011-01-31]. (原始內容存檔於2013-03-12). 
  9. ^ Hudson Trademark Listing on Trademarks411. [2012-02-13]. (原始內容存檔於2014-12-06). 
  10. ^ Hudson's future. [2011-01-11]. (原始內容存檔於2011-01-12). 
  11. ^ Rename Vote Results. [2011-01-29]. (原始內容存檔於2019-10-17). 
  12. ^ The Future of Hudson. [2011-02-02]. (原始內容存檔於2011-02-05). 
  13. ^ Eclipse Foundation proposal. [2011-05-03]. (原始內容存檔於2011-05-09). 
  14. ^ 指移交Hudson給Eclipse基金會。
  15. ^ Oracle hands Hudson to Eclipse, but Jenkins fork seems permanent. InfoWorld. 2011-05-04 [2011-08-10]. (原始內容存檔於2012-03-07). 
  16. ^ 存档副本. [2013-12-08]. (原始內容存檔於2013-12-08). 

外部連結 編輯