System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及軟件開發領域,特別是涉及一種使用腳本同步源代碼進行程序編譯的方法、裝置、電子設備及計算機存儲介質。
技術介紹
1、在軟件開發過程中經常性會遇到開發機與編譯機非同一臺機器的情況,此時,在編譯前需要將源代碼拷貝到編譯機上,然后再開始編譯。在源代碼較多時,為了避免少量的代碼需要拷貝全部的代碼,通常的做法為將開發機上的目錄掛載到編譯機上或者使用同步軟件將變動的代碼同步到編譯機上。采用第一種方法因在編譯時會經常清空刪除目錄,存在將開發機上代碼誤刪除的情況;采用第二方法需要額外的操作步驟且有的系統不方便或無法安裝同步軟件。這就需要一種同步方法可將源代碼快速同步至編譯機且不會被誤刪除。
技術實現思路
1、為克服上述現有技術存在的不足,本專利技術之目的在于提供一種腳本同步的程序編譯方法、裝置、設備及存儲介質,通過將源代碼以只讀方式掛載到編譯機上,使用腳本將變動代碼拷貝至編譯所在目錄,進行編譯,可快速同步代碼且不會被誤刪除,克服了現有技術存在誤刪除源碼,以及需要借助另外同步軟件的缺陷。
2、為達上述目的,本專利技術提出一種腳本同步的程序編譯方法,包括如下步驟:
3、將開發機源代碼目錄通過只讀的方式掛載至編譯器;
4、設置目錄,所述目錄包括需要同步的目錄和編譯目錄;
5、使用腳本將所述需要同步的目錄中的變動代碼拷貝至所述編譯目錄;
6、響應于拷貝完成,調用編譯腳本開始編譯。
7、優選地,所述使用腳本將所述需要同步的目
8、使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新;
9、響應于所述原始文件更新,將原始文件拷貝至所述編譯目錄。
10、優選地,所述使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新,包括如下步驟:
11、使用腳本遍歷所述需要同步的目錄,獲取原始文件的更新時間,獲取所述編譯目錄中與所述原始文件相同位置文件的更新時間;
12、比較所述原始文件更新時間與所述編譯目錄相同位置文件更新時間,若所述原始文件更新時間更晚,則表示原始文件進行了更新。
13、優選地,所述使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新,還包括如下步驟:
14、響應于獲取所述編譯目錄相同位置文件更新時間,判斷所述編譯目錄中與所述原始文件相同位置文件是否存在;
15、若所述編譯目錄中與所述原始文件相同位置文件不存在,將所述編譯目錄相同位置文件更新時間設置為最舊時間。
16、為達到上述目的,本專利技術還提供一種腳本同步的程序編譯裝置,包括:
17、掛載模塊,用于將開發機源代碼目錄通過只讀的方式掛載至編譯器;
18、目錄模塊,用于設置目錄,所述目錄包括需要同步的目錄和編譯目錄;
19、同步模塊,用于使用腳本將所述需要同步的目錄中的變動代碼拷貝至所述編譯目錄;
20、編譯模塊,用于響應于拷貝完成,調用編譯腳本開始編譯。
21、優選地,所述同步模塊包括:
22、判斷更新模塊,用于使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新;
23、文件拷貝模塊,用于響應于所述原始文件更新,將原始文件拷貝至所述編譯目錄。
24、優選地,所述判斷更新模塊包括:
25、文件時間獲取模塊,用于使用腳本遍歷所述需要同步的目錄,獲取原始文件的更新時間,獲取所述編譯目錄中與所述原始文件相同位置文件的更新時間;
26、更新時間比較模塊,用于比較所述原始文件更新時間與所述編譯目錄相同位置文件更新時間,若所述原始文件更新時間更晚,則表示原始文件進行了更新。
27、優選地,所述判斷更新模塊還包括:
28、編譯文件判斷模塊,用于響應于獲取所述編譯目錄相同位置文件更新時間,判斷所述編譯目錄中與所述原始文件相同位置文件是否存在;
29、最舊時間設置模塊,用于若所述編譯目錄中與所述原始文件相同位置文件不存在,將所述編譯目錄相同位置文件更新時間設置為最舊時間。
30、為達到上述目的,本專利技術還提供一種腳本同步的程序編譯設備,包括:
31、一個或多個處理器;
32、存儲裝置,用于存儲一個或多個程序,當所述一個或多個程序被所述一個或多個處理器執行,使得所述一個或多個處理器實現所述任意一種程序編譯方法。
33、為達到上述目的,本專利技術還提供一種存儲介質,其上存儲有計算機程序,所述程序被處理器執行時實現所述任意一種程序編譯方法。
34、與現有技術相比,本專利技術公開的一個實施例具有的有益效果在于,本專利技術通過將源代碼以只讀方式掛載到編譯機上,使用腳本將變動代碼拷貝至編譯所在目錄,隨后開始編譯,本專利技術可快速同步代碼且不會被誤刪除,不需要安裝使用工具軟件,提高了程序編譯的便利性;本專利技術僅需要使用shell命令即可完成,提高了同步方法的跨平臺性;本專利技術僅拷貝變化文件,進一步提升了編譯的效率。
本文檔來自技高網...【技術保護點】
1.一種腳本同步的程序編譯方法,包括如下步驟:
2.如權利要求1所述的一種腳本同步的程序編譯方法,其特征在于,所述使用腳本將所述需要同步的目錄中的變動代碼拷貝至所述編譯目錄,包括如下步驟:
3.如權利要求2所述的一種腳本同步的程序編譯方法,其特征在于,所述使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新,包括如下步驟:
4.如權利要求3所述的一種腳本同步的程序編譯方法,其特征在于,所述使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新,還包括如下步驟:
5.一種腳本同步的程序編譯裝置,包括:
6.如權利要求5所述的一種腳本同步的程序編譯裝置,其特征在于,所述同步模塊包括:
7.如權利要求6所述的一種腳本同步的程序編譯裝置,其特征在于,所述判斷更新模塊包括:
8.如權利要求7所述的一種腳本同步的程序編譯裝置,其特征在于,所述判斷更新模塊還包括:
9.一種腳本同步的程序編譯設備,包括:
10.一種存儲介質,其上存儲有計算機程序,其特征在于,所述程序被處理器執行時實現如權利
...【技術特征摘要】
1.一種腳本同步的程序編譯方法,包括如下步驟:
2.如權利要求1所述的一種腳本同步的程序編譯方法,其特征在于,所述使用腳本將所述需要同步的目錄中的變動代碼拷貝至所述編譯目錄,包括如下步驟:
3.如權利要求2所述的一種腳本同步的程序編譯方法,其特征在于,所述使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新,包括如下步驟:
4.如權利要求3所述的一種腳本同步的程序編譯方法,其特征在于,所述使用腳本遍歷所述需要同步的目錄,判斷原始文件是否更新,還包括如下步驟:
5....
【專利技術屬性】
技術研發人員:李大鵬,楊彬,陳勇銓,胡軍擎,
申請(專利權)人:上海英方軟件股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。