[發明專利]用于持續集成的自動化編譯方法和編譯裝置有效
| 申請號: | 201410318900.0 | 申請日: | 2014-07-04 |
| 公開(公告)號: | CN104077140A | 公開(公告)日: | 2014-10-01 |
| 發明(設計)人: | 劉建男 | 申請(專利權)人: | 用友軟件股份有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 北京友聯知識產權代理事務所(普通合伙) 11343 | 代理人: | 尚志峰;汪海屏 |
| 地址: | 100094 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 持續 集成 自動化 編譯 方法 裝置 | ||
技術領域
本發明涉及計算機技術領域,具體而言,涉及一種用于持續集成的自動化編譯方法和一種用于持續集成的自動化編譯裝置。
背景技術
持續集成是一種軟件開發實踐,即團隊開發成員經常集成他們的工作,通常每個成員每天至少集成一次,也就意味著每天可能會發生多次集成。每次集成都通過自動化的構建(包括編譯,發布,自動化測試)來驗證,從而盡快地發現集成錯誤。許多團隊發現這個過程可以大大減少集成的問題,讓團隊能夠更快的開發內聚的軟件。
自動化構建的核心在于產品標準化和構建腳本的生成。在此工具應用之前,自動化的構建腳本一直由開發人員手動維護。在開發過程中,開發人員每天都向版本庫提交代碼,各產品內部及外部的構建單元之間的依賴關系隨時有可能變化,修改自動化的構建腳本就給開發人員增加了額外的工作負擔。同時,自動化的構建還要起到對持續集成的驗證作用,開發人員編寫自動化的構建腳本難免存在紕漏,對于持續集成每天的完整運行有一定影響。
因此,如何能夠實現自動對構建單元內各組件之間的依賴關系進行分析,提高軟件生產效率成為亟待解決的技術問題。
發明內容
本發明正是基于上述技術問題,提出了一種新的用于持續集成的自動化編譯方案,實現了自動對構建單元內各組件之間的依賴關系進行分析構建,無需開發人員人工分析構建單元內各組件之間的依賴關系,降低了開發人員的工作負擔,提高了軟件生產效率,進而確保了持續集成具有穩定、高效、準確的優點。
有鑒于此,本發明提出了一種用于持續集成的自動化編譯方法,包括:獲取用于描述至少一個構建單元中每個構建單元內的每個組件與其他組件之間的依賴關系的配置文件;解析所述配置文件,根據所述每個組件與其他組件之間的依賴關系生成所述每個構建單元的依賴關系集,并根據所述依賴關系集確定所述每個構建單元內的組件編譯順序;根據所述每個構建單元的所述依賴關系集和每個構建單元內的組件編譯順序,對所述至少一個構建單元進行編譯。
在該技術方案中,通過獲取用于描述每個構建單元內的組件之間的依賴關系的配置文件,以根據配置文件生成構建單元的依賴關系集,進而對構建單元的編譯,使得在進行持續集成時,實現了自動對構建單元內各組件之間的依賴關系進行分析構建,無需開發人員人工分析構建單元內各組件之間的依賴關系,降低了開發人員的工作負擔,節約了人力資源,提高了軟件生產效率,并且降低了軟件項目的開發成本,確保持續集成具有穩定、高效、準確的優點。
在上述技術方案中,優選地,解析任一構建單元的所述配置文件的步驟具體為:判斷所述配置文件的格式是否為預定的標準格式;若判定所述配置文件的格式為所述標準格式,則將所述任一構建單元中的所有組件的內容轉化為數據對象,以進行加載;若判斷所述配置文件的格式不是所述標準格式,則讀取所述配置文件中預定義的關鍵字和所述任一構建單元內的預編譯包的層級依賴關系,根據所述任一構建單元內的預編譯包的層級依賴關系確定所述任一構建單元內的所有組件,將所述任一構建單元中的所有組件的內容轉化為數據對象,以進行加載。
在該技術方案中,通過對配置文件格式是否為標準格式進行判斷,使得能夠針對標準格式的配置文件和非標準格式的配置文件采用不同的解析方式,進而能夠準確地獲取到構建單元內部的組件依賴關系。
在上述技術方案中,優選地,在對所述至少一個構建單元進行編譯之前,還包括:根據所述依賴關系集判斷所述每個構建單元內是否存在不依賴于其他組件的基礎組件;若判定任一構建單元內存在所述基礎組件,則執行所述編譯的步驟;若判定任一構建單元內不存在所述基礎組件,則進行報錯處理。
在該技術方案中,若依賴關系集中不存在基礎組件,即依賴關系集為環形依賴,則在編譯時會出現死循環,影響系統的穩定性,因此,通過對依賴關系集中是否存在不依賴于其他組件的基礎組件進行判斷,使得能夠在依賴關系集內出現問題,即出現環形依賴時,能夠及時提醒開發人員,確保系統的穩定性。
在上述技術方案中,優選地,對所述至少一個構建單元進行編譯的步驟具體為:根據所述每個構建單元的所述依賴關系集和每個構建單元內的組件編譯順序生成用于對所述至少一個構建單元進行編譯的描述文件;按照設定的執行時間,調取并執行所述描述文件。
在上述技術方案中,優選地,還包括:根據所述每個構建單元的依賴關系集,以樹形結構顯示所述至少一個構建單元內的組件之間的依賴關系;在接收到顯示指定組件的依賴情況的指令時,顯示所述指定組件依賴的其他組件。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于用友軟件股份有限公司,未經用友軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410318900.0/2.html,轉載請聲明來源鉆瓜專利網。





