[發(fā)明專利]文件加載方法、裝置、計算機系統(tǒng)和計算機可讀存儲介質(zhì)在審
| 申請?zhí)枺?/td> | 202011289598.2 | 申請日: | 2020-11-17 |
| 公開(公告)號: | CN113778451A | 公開(公告)日: | 2021-12-10 |
| 發(fā)明(設(shè)計)人: | 楊旭;巴亞軍 | 申請(專利權(quán))人: | 北京沃東天駿信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F9/445 |
| 代理公司: | 中科專利商標(biāo)代理有限責(zé)任公司 11021 | 代理人: | 孫蕾 |
| 地址: | 100176 北京市大興區(qū)北京經(jīng)濟*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 文件 加載 方法 裝置 計算機系統(tǒng) 計算機 可讀 存儲 介質(zhì) | ||
本公開提供了一種文件加載方法、裝置、計算機系統(tǒng)和計算機可讀存儲介質(zhì)。該方法包括:獲取以第一文件名命名的源文件,其中,源文件的文件類型為第一文件類型;對源文件進(jìn)行編譯,得到文件類型為第二文件類型的目標(biāo)文件,其中,目標(biāo)文件以第一文件名命名;以及在目標(biāo)項目中引用源文件的位置,將源文件替換為目標(biāo)文件。
技術(shù)領(lǐng)域
本公開涉及計算機技術(shù)領(lǐng)域,更具體地,涉及一種文件加載方法、裝置、計算機系統(tǒng)和計算機可讀存儲介質(zhì)。
背景技術(shù)
隨著計算機技術(shù)的快速發(fā)展,提高了項目完成的效率。
在實現(xiàn)本公開構(gòu)思的過程中,發(fā)明人發(fā)現(xiàn)相關(guān)技術(shù)中至少存在如下問題,開發(fā)人員編寫的計算機程序的后續(xù)實施過程包括編譯和集成兩個過程,因編澤一般會伴隨著計算機程序的函數(shù)名改變,導(dǎo)致程序集成至項目中時存在引用復(fù)雜的問題。
發(fā)明內(nèi)容
有鑒于此,本公開提供了一種文件加載方法、裝置、計算機系統(tǒng)和計算機可讀存儲介質(zhì)。
本公開的一個方面提供了一種文件加載方法,包括:獲取以第一文件名命名的源文件,其中,所述源文件的文件類型為第一文件類型;對所述源文件進(jìn)行編譯,得到文件類型為第二文件類型的目標(biāo)文件,其中,所述目標(biāo)文件以所述第一文件名命名;以及在目標(biāo)項目中引用所述源文件的位置,將所述源文件替換為所述目標(biāo)文件。
根據(jù)本公開的實施例,所述對所述源文件進(jìn)行編譯,得到文件類型為第二文件類型的目標(biāo)文件包括:對所述源文件進(jìn)行編譯,得到以第二文件名命名的機器碼文件,其中,所述機器碼文件的文件類型為所述第二文件類型;將所述機器碼文件的所述第二文件名替換為與所述機器碼文件對應(yīng)的所述源文件的所述第一文件名;以及將具有所述第一文件名的所述機器碼文件作為所述目標(biāo)文件。
根據(jù)本公開的實施例,所述對所述源文件進(jìn)行編譯,得到以第二文件名命名的機器碼文件包括:將所述源文件輸入至詞法分析器,生成分析后的字符流文件;將所述分析后的字符流文件輸入至語法分析器,生成語法樹文件;將所述語法樹文件輸入至語義分析器,以判斷所述語法樹文件的邏輯是否正確;以及在判斷所述語法樹文件的邏輯正確的情況下,將所述語法樹文件輸入至編譯器,生成所述機器碼文件。
根據(jù)本公開的實施例,在所述在目標(biāo)項目中引用所述源文件的位置,將所述源文件替換為所述目標(biāo)文件之后,還包括:將所述目標(biāo)文件轉(zhuǎn)換為字節(jié)數(shù)組文件;對所述字節(jié)數(shù)組文件進(jìn)行合法性驗證;在驗證合法的情況下,對所述字節(jié)數(shù)組文件進(jìn)行編譯并實例化,生成實例文件;以及將所述實例文件加載至所述目標(biāo)項目中。
根據(jù)本公開的實施例,所述在驗證合法的情況下,對所述字節(jié)數(shù)組文件進(jìn)行編譯并實例化,生成實例文件包括:對所述字節(jié)數(shù)組文件進(jìn)行編譯,生成未實例化的模塊;將所述未實例化的模塊進(jìn)行實例化,生成所述實例文件。
根據(jù)本公開的實施例,所述將所述實例文件加載至所述目標(biāo)項目中還包括:通過膠水文件對所述實例文件進(jìn)行封裝,得到膠水文件類;以及將所述膠水文件類加載至所述目標(biāo)項目中。
本公開的另一個方面提供了一種文件加載裝置,包括:獲取模塊,用于獲取以第一文件名命名的源文件,其中,所述源文件的文件類型為第一文件類型;編譯模塊,用于對所述源文件進(jìn)行編譯,得到文件類型為第二文件類型的目標(biāo)文件,其中,所述目標(biāo)文件以所述第一文件名命名;以及替換模塊,用于在目標(biāo)項目中引用所述源文件的位置,將所述源文件替換為所述目標(biāo)文件。
根據(jù)本公開的實施例,所述編譯模塊包括:第一編譯子模塊,用于對所述源文件進(jìn)行編譯,得到以第二文件名命名的機器碼文件,其中,所述機器碼文件的文件類型為所述第二文件類型;替換子模塊,用于將所述機器碼文件的所述第二文件名替換為與所述機器碼文件對應(yīng)的所述源文件的所述第一文件名;以及定義子模塊,用于將具有所述第一文件名的所述機器碼文件作為所述目標(biāo)文件。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京沃東天駿信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司,未經(jīng)北京沃東天駿信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011289598.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





