軟件開(kāi)發(fā)工具代碼發(fā)布的方法和裝置制造方法
【專利摘要】本發(fā)明公開(kāi)了一種軟件開(kāi)發(fā)工具代碼發(fā)布的方法,包括步驟:讀取配置文件中的代碼,解析并提取配置文件中代碼的可替換標(biāo)記;讀取目標(biāo)文件中的代碼,解析并提取目標(biāo)文件中代碼的可替換標(biāo)記;當(dāng)配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留配置文件中的代碼或目標(biāo)文件中的代碼;當(dāng)配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留配置文件中的代碼和目標(biāo)文件中的代碼;根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。本發(fā)明還公開(kāi)了一種軟件開(kāi)發(fā)工具代碼發(fā)布的裝置。本發(fā)明實(shí)現(xiàn)了代碼發(fā)布內(nèi)容的可配置和可擴(kuò)展性、以及代碼的增量發(fā)布,減少了程序占用的存儲(chǔ)空間。
【專利說(shuō)明】軟件開(kāi)發(fā)工具代碼發(fā)布的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及到數(shù)據(jù)處理【技術(shù)領(lǐng)域】,特別涉及到軟件開(kāi)發(fā)工具代碼發(fā)布的方法和裝置。
【背景技術(shù)】
[0002]在軟件產(chǎn)品開(kāi)發(fā)過(guò)程中,軟件開(kāi)發(fā)工具可以為業(yè)務(wù)開(kāi)發(fā)人員提供圖形化集成開(kāi)發(fā)環(huán)境,實(shí)現(xiàn)模型驅(qū)動(dòng)架構(gòu)(MDA, Model Driven Architecture),提高軟件產(chǎn)品的開(kāi)發(fā)和實(shí)施效率,例如,BOS (Business Operating System,業(yè)務(wù)操作系統(tǒng))工具,用戶可根據(jù)軟件開(kāi)發(fā)工具定義相關(guān)內(nèi)容,自動(dòng)發(fā)布生成可以運(yùn)行的程序代碼,即實(shí)現(xiàn)代碼發(fā)布過(guò)程。但是,現(xiàn)有的軟件開(kāi)發(fā)工具在代碼發(fā)布過(guò)程中,發(fā)布生成程序代碼的處理邏輯寫在代碼中,發(fā)布代碼結(jié)構(gòu)如果發(fā)生變化,必須重新修改軟件開(kāi)發(fā)工具自身代碼,修改后的內(nèi)容將會(huì)覆蓋以前的內(nèi)容,可配置和可擴(kuò)展性差。此外,由于不能配置代碼結(jié)構(gòu),軟件開(kāi)發(fā)工具需要多發(fā)布一個(gè)不必要的代碼文件,來(lái)存放程序結(jié)構(gòu)性信息,占用了不必要的空間。
[0003]上述內(nèi)容僅用于輔助理解本發(fā)明的技術(shù)方案,并不代表承認(rèn)上述內(nèi)容是現(xiàn)有技術(shù)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的主要目的為提供一種軟件開(kāi)發(fā)工具代碼發(fā)布的方法和裝置,能夠?qū)崿F(xiàn)代碼發(fā)布內(nèi)容的可配置和可擴(kuò)展性,節(jié)省程序占用空間。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明提出一種軟件開(kāi)發(fā)工具代碼發(fā)布的方法,包括步驟:
[0006]讀取配置文件中的代碼,解析并提取所述配置文件中代碼的可替換標(biāo)記;
[0007]讀取目標(biāo)文件中的代碼,解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記;
[0008]當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留所述配置文件中的代碼或所述目標(biāo)文件中的代碼;當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留所述配置文件中的代碼和所述目標(biāo)文件中的代碼;
[0009]根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0010]優(yōu)選地,所述讀取目標(biāo)文件中的代碼,解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記的步驟之前還包括:
[0011]判斷是否存在目標(biāo)文件;
[0012]如果是,則執(zhí)行所述讀取目標(biāo)文件中的代碼,解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記的步驟;
[0013]如果否,則根據(jù)所述配置文件中的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0014]優(yōu)選地,所述代碼包括代碼內(nèi)容和可替換標(biāo)記。
[0015]優(yōu)選地,所述可替換標(biāo)記包括標(biāo)記部分和特殊字符部分,所述標(biāo)記部分用于描述所述可替換標(biāo)記的起始位置,所述特殊字符部分用于描述所述可替換標(biāo)記的內(nèi)容。
[0016]本發(fā)明還提出一種軟件開(kāi)發(fā)工具代碼發(fā)布的裝置,包括:
[0017]讀取模塊,用于讀取配置文件中的代碼;讀取目標(biāo)文件中的代碼;
[0018]解析模塊,用于解析并提取所述配置文件中代碼的可替換標(biāo)記;解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記;
[0019]判斷模塊,用于當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留所述配置文件中的代碼或所述目標(biāo)文件中的代碼;當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留所述配置文件中的代碼和所述目標(biāo)文件中的代碼;
[0020]生成模塊,用于根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0021]優(yōu)選地,所述判斷模塊還用于,判斷是否存在目標(biāo)文件;
[0022]所述生成模塊還用于,當(dāng)不存在所述目標(biāo)文件時(shí),根據(jù)所述配置文件中的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0023]優(yōu)選地,所述代碼包括代碼內(nèi)容和可替換標(biāo)記。
[0024]優(yōu)選地,所述可替換標(biāo)記包括標(biāo)記部分和特殊字符部分,所述標(biāo)記部分用于描述所述可替換標(biāo)記的起始位置,所述特殊字符部分用于描述所述可替換標(biāo)記的內(nèi)容。
[0025]本發(fā)明將配置文件中的代碼存儲(chǔ)為實(shí)際的代碼內(nèi)容部分和自定義的可替換標(biāo)記部分,當(dāng)需要修改代碼時(shí),只 需要對(duì)配置文件中代碼的可替換標(biāo)記進(jìn)行修改即可,實(shí)現(xiàn)了代碼發(fā)布內(nèi)容的可配置和可擴(kuò)展性,并通過(guò)可替換標(biāo)記和動(dòng)態(tài)模板實(shí)現(xiàn)代碼的增量發(fā)布,修改后的代碼不會(huì)覆蓋原有的代碼,同時(shí),配置文件和目標(biāo)文件中的代碼已經(jīng)包括了代碼結(jié)構(gòu),無(wú)需另外發(fā)布一個(gè)存放程序結(jié)構(gòu)信息的代碼文件,減少了程序占用的存儲(chǔ)空間。
【專利附圖】
【附圖說(shuō)明】
[0026]圖1為本發(fā)明軟件開(kāi)發(fā)工具代碼發(fā)布的方法的第一實(shí)施例的流程示意圖;
[0027]圖2為本發(fā)明軟件開(kāi)發(fā)工具代碼發(fā)布的方法的第二實(shí)施例的流程示意圖;
[0028]圖3為本發(fā)明軟件開(kāi)發(fā)工具代碼發(fā)布的裝置一實(shí)施例的結(jié)構(gòu)示意圖。
[0029]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說(shuō)明。
【具體實(shí)施方式】
[0030]應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0031]如圖1所示,圖1為本發(fā)明軟件開(kāi)發(fā)工具代碼發(fā)布的方法的第一實(shí)施例的流程示意圖。本實(shí)施例提到的軟件開(kāi)發(fā)工具代碼發(fā)布的方法,包括步驟:
[0032]步驟S10,讀取配置文件中的代碼,解析并提取配置文件中代碼的可替換標(biāo)記;
[0033]本實(shí)施例中預(yù)先定義了一個(gè)配置文件,在配置文件中存儲(chǔ)有代碼信息,代碼包括代碼內(nèi)容和可替換標(biāo)記。其中,代碼內(nèi)容為代碼的固定部分,即實(shí)際的代碼內(nèi)容;可替換標(biāo)記為代碼的可替換與可添加部分,用于對(duì)代碼結(jié)構(gòu)進(jìn)行標(biāo)記和配置,可自定義。可替換標(biāo)記包括標(biāo)記部分和特殊字符部分,標(biāo)記部分用于描述可替換標(biāo)記的起始位置,例如,以//@、//#、//$、// !、//*、//%等作為可替換標(biāo)記的開(kāi)頭;特殊字符部分用于描述可替換標(biāo)記的內(nèi)容,例如:
[0034]//iffafImports:標(biāo)記代碼需要?jiǎng)討B(tài)引入其他程序文件的部分;
[0035]//OAutoWiredStart和//OAutoWiredStartEnd:標(biāo)記代碼需要?jiǎng)討B(tài)引入變量的部分;
[0036]//OWafControllerEnd:標(biāo)記代碼結(jié)束;
[0037]//OWafAction:標(biāo)記代碼功能邏輯塊;
[0038]//OWafEvent:標(biāo)記代碼事件邏輯塊。
[0039]可替換標(biāo)記可靈活擴(kuò)展,當(dāng)代碼結(jié)構(gòu)發(fā)生改變后,只需調(diào)整配置文件中的可替換標(biāo)記部分,即達(dá)到對(duì)代碼結(jié)構(gòu)進(jìn)行配置擴(kuò)展的目的。
[0040]本實(shí)施例在進(jìn)行代碼發(fā)布時(shí),讀取配置文件中的代碼,解析代碼獲得代碼的實(shí)際代碼內(nèi)容和自定義的可替換標(biāo)記部分。
[0041]步驟S20,讀取目標(biāo)文件中的代碼,解析并提取目標(biāo)文件中代碼的可替換標(biāo)記;
[0042]然后從已存在的目標(biāo)文件中讀取代碼,解析出目標(biāo)文件中代碼的實(shí)際代碼內(nèi)容和自定義的可替換標(biāo)記。
[0043]步驟S30,當(dāng)配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留配置文件中的代碼或目標(biāo)文件中的代碼;當(dāng)配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留配置文件中的代碼和目標(biāo)文件中的代碼;
[0044]上述配置文件中可包括一個(gè)或多個(gè)代碼,目標(biāo)文件中也可包括一個(gè)或多個(gè)代碼,將上述從兩個(gè)文件中的代碼解析得到的可替換標(biāo)記進(jìn)行對(duì)比,查找是否存在具有相同可替換標(biāo)記的代碼。如果查找到具有相同可替換標(biāo)記的代碼,則只需要保留其中一個(gè),例如,在配置文件中的代碼Al的可替換標(biāo)記為B,代碼內(nèi)容為A,目標(biāo)文件中的代碼A2的可替換標(biāo)記為C,代碼內(nèi)容為A,當(dāng)B=C,則說(shuō)明代碼內(nèi)容A沒(méi)有變化,只需要保留配置文件中的代碼Al或目標(biāo)文件中的代碼A2中的一個(gè)即可。如果配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記不同,這需要將配置文件中的代碼添加到目標(biāo)文件中,實(shí)現(xiàn)代碼的可擴(kuò)展性,例如,在配置文件中的代碼Al的可替換標(biāo)記為B,代碼內(nèi)容為A,目標(biāo)文件中的代碼A的可替換標(biāo)記為C,代碼內(nèi)容為A,當(dāng)B古C,則說(shuō)明代碼內(nèi)容A的結(jié)構(gòu)發(fā)生了變化,Al是新添加的代碼,應(yīng)將其保留,同時(shí),由于Al和A2的結(jié)構(gòu)不同,因此在保留Al的時(shí)候,不會(huì)覆蓋目標(biāo)文件中原有的A2,實(shí)現(xiàn)了代碼的可配置和可擴(kuò)展性。
[0045]步驟S40,根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0046]將上述配置文件中的代碼和目標(biāo)文件的代碼融合,創(chuàng)建動(dòng)態(tài)模板,并生成新的目標(biāo)文件存儲(chǔ)下來(lái),新生成的目標(biāo)文件中的代碼包括有代碼的可替換標(biāo)記,無(wú)需另外發(fā)布一個(gè)存放程序結(jié)構(gòu)信息的代碼文件,有利于節(jié)省程序占用的存儲(chǔ)空間。
[0047]本實(shí)施例將配置文件中的代碼存儲(chǔ)為實(shí)際的代碼內(nèi)容部分和自定義的可替換標(biāo)記部分,當(dāng)需要修改代碼時(shí),只需要對(duì)配置文件中代碼的可替換標(biāo)記進(jìn)行修改即可,實(shí)現(xiàn)了代碼發(fā)布內(nèi)容的可配置和可擴(kuò)展性,并通過(guò)可替換標(biāo)記和動(dòng)態(tài)模板實(shí)現(xiàn)代碼的增量發(fā)布,修改后的代碼不會(huì)覆蓋原有的代碼,同時(shí),配置文件和目標(biāo)文件中的代碼已經(jīng)包括了代碼結(jié)構(gòu),無(wú)需另外發(fā)布一個(gè)存放程序結(jié)構(gòu)信息的代碼文件,減少了程序占用的存儲(chǔ)空間。
[0048]如圖2所示,圖2為本發(fā)明軟件開(kāi)發(fā)工具代碼發(fā)布的方法的第二實(shí)施例的流程示意圖。本實(shí)施例是以圖1所示實(shí)施例為基礎(chǔ),步驟S20之前還包括:[0049]步驟S50,判斷是否存在目標(biāo)文件;如果是,則執(zhí)行步驟S20;如果否,則執(zhí)行步驟S60 ;
[0050]步驟S60,根據(jù)配置文件中的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0051]本實(shí)施例中,對(duì)于不存在目標(biāo)文件的情況,例如首次發(fā)布代碼時(shí),此時(shí)尚未生成過(guò)目標(biāo)文件,則直接采用配置文件中的代碼來(lái)創(chuàng)建動(dòng)態(tài)模板,并生成目標(biāo)文件,在下一次發(fā)布代碼時(shí),再將新的配置文件中的代碼與前一次生成的目標(biāo)文件中的代碼對(duì)比,創(chuàng)建新的動(dòng)態(tài)模板,生成新的目標(biāo)文件。本實(shí)施例在不存在目標(biāo)文件時(shí),直接采用配置文件中的代碼來(lái)創(chuàng)建動(dòng)態(tài)模板,有利于提高動(dòng)態(tài)模板和目標(biāo)文件的生成效率,縮短代碼發(fā)布時(shí)間。
[0052]如圖3所示,圖3為本發(fā)明軟件開(kāi)發(fā)工具代碼發(fā)布的裝置一實(shí)施例的結(jié)構(gòu)示意圖。本實(shí)施例提到的軟件開(kāi)發(fā)工具代碼發(fā)布的裝置,包括:
[0053]讀取模塊10,用于讀取配置文件中的代碼;讀取目標(biāo)文件中的代碼;
[0054]解析模塊20,用于解析并提取配置文件中代碼的可替換標(biāo)記;解析并提取目標(biāo)文件中代碼的可替換標(biāo)記;
[0055]判斷模塊30,用于當(dāng)配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留配置文件中的代碼或目標(biāo)文件中的代碼;當(dāng)配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留配置文件中的代碼和目標(biāo)文件中的代碼;
[0056]生成模塊40,用于根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0057]本實(shí)施例中預(yù)先定義了一個(gè)配置文件,在配置文件中存儲(chǔ)有代碼信息,代碼包括代碼內(nèi)容和可替換標(biāo)記。其中,代碼內(nèi)容為代碼的固定部分,即實(shí)際的代碼內(nèi)容;可替換標(biāo)記為代碼的可替換與可添加部分,用于對(duì)代碼結(jié)構(gòu)進(jìn)行標(biāo)記和配置,可自定義??商鎿Q標(biāo)記包括標(biāo)記部分和特殊字符部分,標(biāo)記部分用于描述可替換標(biāo)記的起始位置,例如,以//@、//#、//$、// !、//*、//%等作為可替換標(biāo)記的開(kāi)頭;特殊字符部分用于描述可替換標(biāo)記的內(nèi)容,例如:
[0058]//iffafImports:標(biāo)記代碼需要?jiǎng)討B(tài)引入其他程序文件的部分;
[0059]//OAutoWiredStart和//OAutoWiredStartEnd:標(biāo)記代碼需要?jiǎng)討B(tài)引入變量的部分;
[0060]//OWafControllerEnd:標(biāo)記代碼結(jié)束;
[0061]//OWafAction:標(biāo)記代碼功能邏輯塊;
[0062]//OWafEvent:標(biāo)記代碼事件邏輯塊。
[0063]可替換標(biāo)記可靈活擴(kuò)展,當(dāng)代碼結(jié)構(gòu)發(fā)生改變后,只需調(diào)整配置文件中的可替換標(biāo)記部分,即達(dá)到對(duì)代碼結(jié)構(gòu)進(jìn)行配置擴(kuò)展的目的。
[0064]本實(shí)施例在進(jìn)行代碼發(fā)布時(shí),讀取配置文件中的代碼,解析代碼獲得代碼的實(shí)際代碼內(nèi)容和自定義的可替換標(biāo)記部分。然后從已存在的目標(biāo)文件中讀取代碼,解析出目標(biāo)文件中代碼的實(shí)際代碼內(nèi)容和自定義的可替換標(biāo)記。
[0065]上述配置文件中可包括一個(gè)或多個(gè)代碼,目標(biāo)文件中也可包括一個(gè)或多個(gè)代碼,將上述從兩個(gè)文件中的代碼解析得到的可替換標(biāo)記進(jìn)行對(duì)比,查找是否存在具有相同可替換標(biāo)記的代碼。如果查找到具有相同可替換標(biāo)記的代碼,則只需要保留其中一個(gè),例如,在配置文件中的代碼Al的可替換標(biāo)記為B,代碼內(nèi)容為A,目標(biāo)文件中的代碼A2的可替換標(biāo)記為C,代碼內(nèi)容為A,當(dāng)B=C,則說(shuō)明代碼內(nèi)容A沒(méi)有變化,只需要保留配置文件中的代碼Al或目標(biāo)文件中的代碼A2中的一個(gè)即可。如果配置文件中代碼的可替換標(biāo)記與目標(biāo)文件中代碼的可替換標(biāo)記不同,這需要將配置文件中的代碼添加到目標(biāo)文件中,實(shí)現(xiàn)代碼的可擴(kuò)展性,例如,在配置文件中的代碼Al的可替換標(biāo)記為B,代碼內(nèi)容為A,目標(biāo)文件中的代碼A的可替換標(biāo)記為C,代碼內(nèi)容為A,當(dāng)B古C,則說(shuō)明代碼內(nèi)容A的結(jié)構(gòu)發(fā)生了變化,Al是新添加的代碼,應(yīng)將其保留,同時(shí),由于Al和A2的結(jié)構(gòu)不同,因此在保留Al的時(shí)候,不會(huì)覆蓋目標(biāo)文件中原有的A2,實(shí)現(xiàn)了代碼的可配置和可擴(kuò)展性。
[0066]將上述配置文件中的代碼和目標(biāo)文件的代碼融合,創(chuàng)建動(dòng)態(tài)模板,并生成新的目標(biāo)文件存儲(chǔ)下來(lái),新生成的目標(biāo)文件中的代碼包括有代碼的可替換標(biāo)記,無(wú)需另外發(fā)布一個(gè)存放程序結(jié)構(gòu)信息的代碼文件,有利于節(jié)省程序占用的存儲(chǔ)空間。
[0067]本實(shí)施例將配置文件中的代碼存儲(chǔ)為實(shí)際的代碼內(nèi)容部分和自定義的可替換標(biāo)記部分,當(dāng)需要修改代碼時(shí),只需要對(duì)配置文件中代碼的可替換標(biāo)記進(jìn)行修改即可,實(shí)現(xiàn)了代碼發(fā)布內(nèi)容的可配置和可擴(kuò)展性,并通過(guò)可替換標(biāo)記和動(dòng)態(tài)模板實(shí)現(xiàn)代碼的增量發(fā)布,修改后的代碼不會(huì)覆蓋原有的代碼,同時(shí),配置文件和目標(biāo)文件中的代碼已經(jīng)包括了代碼結(jié)構(gòu),無(wú)需另外發(fā)布一個(gè)存放程序結(jié)構(gòu)信息的代碼文件,減少了程序占用的存儲(chǔ)空間。
[0068]進(jìn)一步的,判斷模塊30還用于,判斷是否存在目標(biāo)文件;
[0069]生成模塊40還用于,當(dāng)不存在目標(biāo)文件時(shí),根據(jù)配置文件中的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
[0070]本實(shí)施例中,對(duì)于不存在目標(biāo)文件的情況,例如首次發(fā)布代碼時(shí),此時(shí)尚未生成過(guò)目標(biāo)文件,則直接采用配置文件中的代碼來(lái)創(chuàng)建動(dòng)態(tài)模板,并生成目標(biāo)文件,在下一次發(fā)布代碼時(shí),再將新的配置文件中的代碼與前一次生成的目標(biāo)文件中的代碼對(duì)比,創(chuàng)建新的動(dòng)態(tài)模板,生成新的目標(biāo)文件。本實(shí)施例在不存在目標(biāo)文件時(shí),直接采用配置文件中的代碼來(lái)創(chuàng)建動(dòng)態(tài)模板,有利于提高動(dòng)態(tài)模板和目標(biāo)文件的生成效率,縮短代碼發(fā)布時(shí)間。
[0071]上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在一個(gè)存儲(chǔ)介質(zhì)(如R0M/RAM、磁碟、光盤)中,包括若干指令用以使得一臺(tái)終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例的方法。
[0072]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的【技術(shù)領(lǐng)域】,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種軟件開(kāi)發(fā)工具代碼發(fā)布的方法,其特征在于,包括步驟: 讀取配置文件中的代碼,解析并提取所述配置文件中代碼的可替換標(biāo)記; 讀取目標(biāo)文件中的代碼,解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記; 當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留所述配置文件中的代碼或所述目標(biāo)文件中的代碼;當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留所述配置文件中的代碼和所述目標(biāo)文件中的代碼; 根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
2.如權(quán)利要求1所述的軟件開(kāi)發(fā)工具代碼發(fā)布的方法,其特征在于,所述讀取目標(biāo)文件中的代碼,解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記的步驟之前還包括: 判斷是否存在目標(biāo)文件; 如果是,則執(zhí)行所述讀取目標(biāo)文件中的代碼,解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記的步驟; 如果否,則根據(jù)所述配置文件中的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
3.如權(quán)利要求1或2所述的軟件開(kāi)發(fā)工具代碼發(fā)布的方法,其特征在于,所述代碼包括代碼內(nèi)容和可替換標(biāo)記。
4.如權(quán)利要求3所述的軟件開(kāi)發(fā)工具代碼發(fā)布的方法,其特征在于,所述可替換標(biāo)記包括標(biāo)記部分和特殊字符部分,所述標(biāo)記部分用于描述所述可替換標(biāo)記的起始位置,所述特殊字符部分用于描述所述可替換標(biāo)記的內(nèi)容。
5.一種軟件開(kāi)發(fā)工具代碼發(fā)布的裝置,其特征在于,包括: 讀取模塊,用于讀取配置文件中的代碼;讀取目標(biāo)文件中的代碼; 解析模塊,用于解析并提取所述配置文件中代碼的可替換標(biāo)記;解析并提取所述目標(biāo)文件中代碼的可替換標(biāo)記; 判斷模塊,用于當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記相同時(shí),保留所述配置文件中的代碼或所述目標(biāo)文件中的代碼;當(dāng)所述配置文件中代碼的可替換標(biāo)記與所述目標(biāo)文件中代碼的可替換標(biāo)記不同時(shí),保留所述配置文件中的代碼和所述目標(biāo)文件中的代碼; 生成模塊,用于根據(jù)保留的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
6.如權(quán)利要求5所述的軟件開(kāi)發(fā)工具代碼發(fā)布的裝置,其特征在于,所述判斷模塊還用于,判斷是否存在目標(biāo)文件; 所述生成模塊還用于,當(dāng)不存在所述目標(biāo)文件時(shí),根據(jù)所述配置文件中的代碼創(chuàng)建動(dòng)態(tài)模板,并根據(jù)動(dòng)態(tài)模板生成新的目標(biāo)文件。
7.如權(quán)利要求5或6所述的軟件開(kāi)發(fā)工具代碼發(fā)布的裝置,其特征在于,所述代碼包括代碼內(nèi)容和可替換標(biāo)記。
8.如權(quán)利要求7所述的軟件開(kāi)發(fā)工具代碼發(fā)布的裝置,其特征在于,所述可替換標(biāo)記包括標(biāo)記部分和特殊字符部分,所述標(biāo)記部分用于描述所述可替換標(biāo)記的起始位置,所述特殊字符部分用于描述所述可替換標(biāo)記的內(nèi)容。
【文檔編號(hào)】G06F9/44GK103677821SQ201310654741
【公開(kāi)日】2014年3月26日 申請(qǐng)日期:2013年12月5日 優(yōu)先權(quán)日:2013年12月5日
【發(fā)明者】張永軍, 王帥 申請(qǐng)人:金蝶軟件(中國(guó))有限公司