一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法及系統(tǒng),管理方法包括:獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串;獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串;從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào);殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。本發(fā)明整個(gè)查殺流程完全腳本化。非常有利于程序集成,實(shí)現(xiàn)智能化控制,無需任何人工干預(yù)。
【專利說明】—種在Wi ndows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及Java虛擬機(jī)進(jìn)程相關(guān)【技術(shù)領(lǐng)域】,特別是一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法及系統(tǒng)。
【背景技術(shù)】
[0002]Java虛擬機(jī)是一種抽象化的計(jì)算機(jī),通過在實(shí)際的計(jì)算機(jī)上仿真模擬各種計(jì)算機(jī)功能來實(shí)現(xiàn)的。Java虛擬機(jī)有自己完善的硬體架構(gòu),如處理器、堆棧、寄存器等,還具有相應(yīng)的指令系統(tǒng)。JVM屏蔽了與具體操作系統(tǒng)平臺(tái)相關(guān)的信息,使得Java程序只需生成在Java虛擬機(jī)上運(yùn)行的目標(biāo)代碼(字節(jié)碼),就可以在多種平臺(tái)上不加修改地運(yùn)行。每個(gè)Java程序運(yùn)行時(shí)均會(huì)在系統(tǒng)上生成一個(gè)Java虛擬機(jī)進(jìn)程。
[0003]一個(gè)Java虛擬機(jī)進(jìn)程需要進(jìn)行管理,即在需要時(shí)啟動(dòng),在Java虛擬機(jī)進(jìn)程沒有后續(xù)需要時(shí)殺死,以回收資源避免浪費(fèi)。
[0004]現(xiàn)在Windows查殺Java虛擬機(jī)進(jìn)程的方法主要有兩種:一種是通過Windows任務(wù)管理器肉眼識(shí)別,然后查殺。另一種是通過taskki 11命令行工具進(jìn)程查殺。其中,taskki 11是Windows查殺Java虛擬機(jī)進(jìn)程的命令行工具。而任務(wù)管理器是Windows查看系統(tǒng)進(jìn)程信息和查殺Java虛擬機(jī)進(jìn)程的圖形化工具。
[0005]使用任務(wù)管理器查殺Java虛擬機(jī)進(jìn)程,由于任務(wù)管理器沒有提供批處理調(diào)用接口,無法在腳本中使用,不能實(shí)現(xiàn)自動(dòng)化。使用taskkill命令只能通過進(jìn)程映像或進(jìn)程ID進(jìn)行查殺。如果使用進(jìn)程映像進(jìn)行查殺,所有進(jìn)程映像名相同的進(jìn)程都會(huì)被殺掉。例如,使用java命令啟動(dòng)多個(gè)java進(jìn)程,由于進(jìn)程映像名都是java.exe,所以所有的java進(jìn)程都會(huì)被殺掉,不能區(qū)分查殺。因?yàn)榕幚砻顔?dòng)進(jìn)程時(shí)不能輸出進(jìn)程ID,所以在腳本中根本沒法使用進(jìn)程ID進(jìn)行查殺。因此,現(xiàn)有的機(jī)制,在Windows系統(tǒng)下,由于無法使用批處理腳本智能化區(qū)分查殺java虛擬機(jī)進(jìn)程,需要人工干預(yù),從而不利于Java進(jìn)程的智能化管理與系統(tǒng)集成,還浪費(fèi)了大量的人力物力。
【發(fā)明內(nèi)容】
[0006]基于此,有必要針對(duì)現(xiàn)有技術(shù)在Windows上無法采用批處理命令對(duì)Java虛擬機(jī)進(jìn)程進(jìn)行自動(dòng)化管理的技術(shù)問題,提供一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法及系統(tǒng)。
[0007]一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法,包括:
[0008]步驟11,獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串,執(zhí)行步驟12 ;
[0009]步驟12,獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串,執(zhí)行步驟13 ;
[0010]步驟13,從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào),執(zhí)行步驟14;
[0011 ] 步驟14,殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0012]一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng),包括:
[0013]指定查殺標(biāo)識(shí)字符串獲取模塊,用于獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串,執(zhí)行待檢索進(jìn)程信息獲取模塊;
[0014]待檢索進(jìn)程信息獲取模塊,用于獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串,執(zhí)行待查殺Java虛擬機(jī)進(jìn)程號(hào)獲取模塊;
[0015]待查殺Java虛擬機(jī)進(jìn)程號(hào)獲取模塊,用于從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào),執(zhí)行進(jìn)程殺死模塊;
[0016]進(jìn)程殺死模塊,用于殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0017]本發(fā)明通過在所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息中進(jìn)行檢索,獲取與指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串相同的待查殺標(biāo)識(shí)字符串,根據(jù)待查殺標(biāo)識(shí)字符串獲取對(duì)應(yīng)的進(jìn)程號(hào),從而殺死對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。本發(fā)明的整個(gè)流程均可以采用批處理的方式執(zhí)行,因此能夠很好地對(duì)Java虛擬機(jī)進(jìn)程進(jìn)行自動(dòng)化管理。整個(gè)查殺流程完全腳本化。非常有利于程序集成,實(shí)現(xiàn)智能化控制,無需任何人工干預(yù)。
【專利附圖】
【附圖說明】
[0018]圖1為本發(fā)明一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法的工作流程圖;
[0019]圖2為本發(fā)明的一個(gè)單實(shí)例查殺例子的工作流程圖;
[0020]圖3為本發(fā)明一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng)的結(jié)構(gòu)模塊圖。
【具體實(shí)施方式】
[0021]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明做進(jìn)一步詳細(xì)的說明。
[0022]如圖1所示為本發(fā)明一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法的工作流程圖,包括:
[0023]步驟11,獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串,執(zhí)行步驟12 ;
[0024]步驟12,獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串,執(zhí)行步驟13 ;
[0025]步驟13,從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào),執(zhí)行步驟14;
[0026]步驟14,殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0027]用戶可以通過指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串,從而指定所要查殺的Java虛擬機(jī)進(jìn)程。在步驟12中,可以采用jps -1命令獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息,然后執(zhí)行步驟13,從所獲取的所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息中,查找指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串,從而獲得對(duì)應(yīng)的進(jìn)程號(hào),在步驟14中完成查殺。在步驟14中,可以采用taskkill命令殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0028]本發(fā)明所采用方法,能夠采用批處理方式執(zhí)行,因此,能在Windows中實(shí)現(xiàn)智能化控制,無需任何人工干預(yù)。
[0029]在其中一個(gè)實(shí)施例中,還包括單實(shí)例批處理步驟,具體包括:
[0030]使用批處理命令獲取待啟動(dòng)的Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為啟動(dòng)標(biāo)識(shí)字符串;
[0031]使用批處理命令按照啟動(dòng)標(biāo)識(shí)字符串啟動(dòng)Java虛擬機(jī)進(jìn)程;
[0032]如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行步驟11,且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
[0033]Java虛擬機(jī)進(jìn)程是通過將Java的代碼進(jìn)行實(shí)例化后得到,本實(shí)施例是單實(shí)例批處理的例子,其中,所述單實(shí)例指的是對(duì)同一套代碼僅實(shí)例一次。此時(shí)代碼對(duì)應(yīng)的標(biāo)識(shí)字符串唯一,可以通過標(biāo)識(shí)字符串指定對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0034]在本實(shí)施例中,首先通過批處理命令啟動(dòng)Java虛擬機(jī)進(jìn)程,
[0035]在批處理的過程中,當(dāng)滿足需要?dú)⑺繨ava虛擬機(jī)進(jìn)程的條件時(shí),則向系統(tǒng)請(qǐng)求殺死指定的Java虛擬機(jī)進(jìn)程,由于每個(gè)Java虛擬機(jī)進(jìn)程中啟動(dòng)時(shí)是按照啟動(dòng)標(biāo)識(shí)字符串進(jìn)行啟動(dòng),因此在啟動(dòng)時(shí)已經(jīng)獲取到了啟動(dòng)標(biāo)識(shí)字符串。因此,要?dú)⑺廊我庖粋€(gè)Java虛擬機(jī)進(jìn)程,只需要在執(zhí)行步驟11時(shí),將所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
[0036]整個(gè)過程都可以在批處理過程中實(shí)現(xiàn),從而實(shí)現(xiàn)整體的智能化控制。
[0037]在其中一個(gè)實(shí)施例中,所述標(biāo)識(shí)字符串為啟動(dòng)所對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程時(shí)指定的包括對(duì)應(yīng)jar包包名的程序入口類的名稱。
[0038]在Windows系統(tǒng)中,啟動(dòng)一個(gè)Java虛擬機(jī)進(jìn)程,需要提供Jar包的名稱,例如com.jd.App,并同時(shí)需要提供Jar包中程序入口類的名稱,在一個(gè)Jar包中可以包括多套執(zhí)行不同功能的程序代碼,每套程序代碼都有一個(gè)固定的程序入口類。在啟動(dòng)Java虛擬機(jī)進(jìn)程時(shí),需要提供程序入口類的名稱,從而在啟動(dòng)的Java虛擬機(jī)進(jìn)程中,執(zhí)行該程序入口類對(duì)應(yīng)的程序代碼。而在使用jps -1之后,就會(huì)顯示一個(gè)包括所有Java虛擬機(jī)進(jìn)程的java進(jìn)程列表,在這個(gè)Java進(jìn)程列表中,會(huì)顯示每個(gè)Java虛擬機(jī)進(jìn)程的進(jìn)程號(hào)及包括Jar包包名的程序入口類的名稱。因此,可以通過檢索獲取到待查殺的Java虛擬機(jī)進(jìn)程的進(jìn)程號(hào),從而最終采用taskkill殺死。
[0039]在其中一個(gè)實(shí)施例中,還包括多實(shí)例啟動(dòng)步驟,具體包括:
[0040]獲取生成Java虛擬機(jī)進(jìn)程的jar包;
[0041]將所述jar包中Java虛擬機(jī)進(jìn)程對(duì)應(yīng)的程序入口類復(fù)制為多份執(zhí)行相同功能的程序入口復(fù)制類;
[0042]修改所述程序入口復(fù)制類的名稱,使得每份程序入口復(fù)制類的名稱唯一;
[0043]將修改后具有唯一名稱的程序入口復(fù)制類加入所述jar包;[0044]使用所述jar包按照每個(gè)程序入口復(fù)制類的名稱,分別為每個(gè)程序入口復(fù)制類啟動(dòng)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0045]本實(shí)施例是對(duì)應(yīng)多實(shí)例啟動(dòng),由于同一個(gè)Jar包中的一套程序代碼可以進(jìn)行多次實(shí)例化,并在多個(gè)Java虛擬機(jī)進(jìn)程中運(yùn)行,因此,此時(shí)如果用jps -1會(huì)得到同一個(gè)程序入口類的名稱對(duì)應(yīng)多個(gè)進(jìn)程號(hào),從而難以分辨待查殺Java虛擬機(jī)進(jìn)程。因此,本實(shí)施例中,將jar包中Java虛擬機(jī)進(jìn)程對(duì)應(yīng)的程序入口類復(fù)制為多份執(zhí)行相同功能的程序入口復(fù)制類,并修改所述程序入口復(fù)制類的名稱,使得每份程序入口復(fù)制類的名稱唯一,然后分別啟動(dòng)。則此時(shí)啟動(dòng)后,每個(gè)Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串將會(huì)唯一,方便后續(xù)查殺。
[0046]在其中一個(gè)實(shí)施例中,還包括多實(shí)例批處理步驟,具體包括:
[0047]執(zhí)行多實(shí)例啟動(dòng)步驟,啟動(dòng)多個(gè)Java虛擬機(jī)進(jìn)程;
[0048]將每個(gè)程序入口復(fù)制類的名稱與對(duì)應(yīng)的jar包的包名組成對(duì)應(yīng)每個(gè)Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串,作為每個(gè)Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串;
[0049]如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行步驟11,且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
[0050]如圖2所示為本發(fā)明的一個(gè)單實(shí)例查殺例子的工作流程圖,包括:
[0051]步驟S201,指定要查殺的Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串;
[0052]步驟S202,使用jps-Ι命令列出包括所有的Java虛擬機(jī)進(jìn)程的進(jìn)程信息的進(jìn)程信息列表;
[0053]步驟S203,遍歷進(jìn)程信息列表;
[0054]步驟S204,使用批處理命令獲取每個(gè)Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串字段;
[0055]步驟S205,判斷該標(biāo)識(shí)字符串字段是否與要查殺的Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串相同。如果相同則獲取該標(biāo)識(shí)字符串字段對(duì)應(yīng)的進(jìn)程號(hào),然后執(zhí)行步驟S206,如果不相同,則執(zhí)行步驟S207 ;
[0056]步驟S206,根據(jù)步驟S205獲取的進(jìn)程號(hào),查殺該Java虛擬機(jī)進(jìn)程,退出;
[0057]步驟S207,判斷遍歷是否結(jié)束,如果沒有結(jié)束,則執(zhí)行步驟S203繼續(xù)遍歷查殺,否則退出。
[0058]如圖3所示為本發(fā)明一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng)的結(jié)構(gòu)模塊圖,包括:
[0059]指定查殺標(biāo)識(shí)字符串獲取模塊301,用于獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串,執(zhí)行待檢索進(jìn)程信息獲取模塊;
[0060]待檢索進(jìn)程信息獲取模塊302,用于獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串,執(zhí)行待查殺Java虛擬機(jī)進(jìn)程號(hào)獲取模塊;
[0061]待查殺Java虛擬機(jī)進(jìn)程號(hào)獲取模塊303,用于從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào),執(zhí)行進(jìn)程殺死模塊;
[0062]進(jìn)程殺死模塊304,用于殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0063]在其中一個(gè)實(shí)施例中,還包括單實(shí)例批處理模塊,具體用于:[0064]使用批處理命令獲取待啟動(dòng)的Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為啟動(dòng)標(biāo)識(shí)字符串;
[0065]使用批處理命令按照啟動(dòng)標(biāo)識(shí)字符串啟動(dòng)Java虛擬機(jī)進(jìn)程;
[0066]如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行指定查殺標(biāo)識(shí)字符串獲取模塊,且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
[0067]在其中一個(gè)實(shí)施例中,所述標(biāo)識(shí)字符串為啟動(dòng)所對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程時(shí)指定的包括對(duì)應(yīng)jar包包名的程序入口類的名稱。
[0068]在其中一個(gè)實(shí)施例中,還包括多實(shí)例啟動(dòng)模塊,具體用于:
[0069]獲取生成Java虛擬機(jī)進(jìn)程的jar包;
[0070]將所述jar包中Java虛擬機(jī)進(jìn)程對(duì)應(yīng)的程序入口類復(fù)制為多份執(zhí)行相同功能的程序入口復(fù)制類;
[0071]修改所述程序入口復(fù)制類的名稱,使得每份程序入口復(fù)制類的名稱唯一;
[0072]將修改后具有唯一名稱的程序入口復(fù)制類加入所述jar包;
[0073]使用所述jar包按照每個(gè)程序入口復(fù)制類的名稱,分別為每個(gè)程序入口復(fù)制類啟動(dòng)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
[0074]在其中一個(gè)實(shí)施例中,還包括多實(shí)例批處理模塊,具體用于:
[0075]執(zhí)行多實(shí)例啟動(dòng)模塊,啟動(dòng)多個(gè)Java虛擬機(jī)進(jìn)程;
[0076]將每個(gè)程序入口復(fù)制類的名稱與對(duì)應(yīng)的jar包的包名組成對(duì)應(yīng)每個(gè)Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串,作為每個(gè)Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串;
[0077]如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行指定查殺標(biāo)識(shí)字符串獲取模塊,且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
[0078]以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
【權(quán)利要求】
1.一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法,其特征在于,包括: 步驟(11 ),獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串,執(zhí)行步驟(12); 步驟(12),獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串,執(zhí)行步驟(13); 步驟(13),從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào),執(zhí)行步驟(14); 步驟(14),殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
2.根據(jù)權(quán)利要求1所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法,其特征在于,還包括單實(shí)例批處理步驟,具體包括: 使用批處理命令獲取待啟動(dòng)的Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為啟動(dòng)標(biāo)識(shí)字符串; 使用批處理命令按照啟動(dòng)標(biāo)識(shí)字符串啟動(dòng)Java虛擬機(jī)進(jìn)程; 如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行步驟(11 ),且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
3.根據(jù)權(quán)利要求1所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法,其特征在于,所述標(biāo)識(shí)字符串為啟動(dòng)所對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程時(shí)指定的包括對(duì)應(yīng)jar包包名的程序入口類的名稱。`
4.根據(jù)權(quán)利要求3所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法,其特征在于,還包括多實(shí)例啟動(dòng)步驟,具體包括: 獲取生成Java虛擬機(jī)進(jìn)程的jar包; 將所述jar包中Java虛擬機(jī)進(jìn)程對(duì)應(yīng)的程序入口類復(fù)制為多份執(zhí)行相同功能的程序入口復(fù)制類; 修改所述程序入口復(fù)制類的名稱,使得每份程序入口復(fù)制類的名稱唯一; 將修改后具有唯一名稱的程序入口復(fù)制類加入所述jar包; 使用所述jar包按照每個(gè)程序入口復(fù)制類的名稱,分別為每個(gè)程序入口復(fù)制類啟動(dòng)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
5.根據(jù)權(quán)利要求4所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理方法,其特征在于,還包括多實(shí)例批處理步驟,具體包括: 執(zhí)行多實(shí)例啟動(dòng)步驟,啟動(dòng)多個(gè)Java虛擬機(jī)進(jìn)程; 將每個(gè)程序入口復(fù)制類的名稱與對(duì)應(yīng)的jar包的包名組成對(duì)應(yīng)每個(gè)Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串,作為每個(gè)Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串; 如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行步驟(11),且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串。
6.一種在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng),其特征在于,包括: 指定查殺標(biāo)識(shí)字符串獲取模塊,用于獲取指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為指定查殺標(biāo)識(shí)字符串,執(zhí)行待檢索進(jìn)程信息獲取模塊; 待檢索進(jìn)程信息獲取模塊,用于獲取所有的所述Java虛擬機(jī)進(jìn)程的進(jìn)程信息作為待檢索進(jìn)程信息,所述待檢索進(jìn)程信息包括與所述Java虛擬機(jī)進(jìn)程關(guān)聯(lián)的進(jìn)程號(hào)以及標(biāo)識(shí)字符串,執(zhí)行待查殺Java虛擬機(jī)進(jìn)程號(hào)獲取模塊; 待查殺Java虛擬機(jī)進(jìn)程號(hào)獲取模塊,用于從所述待檢索信息中檢索與所述指定查殺標(biāo)識(shí)字符串相同的標(biāo)識(shí)字符串作為待查殺標(biāo)識(shí)字符串,獲取與所述待查殺標(biāo)識(shí)字符串對(duì)應(yīng)的進(jìn)程號(hào)作為待查殺Java虛擬機(jī)進(jìn)程號(hào),執(zhí)行進(jìn)程殺死模塊; 進(jìn)程殺死模塊,用于殺死所述待查殺Java虛擬機(jī)進(jìn)程號(hào)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
7.根據(jù)權(quán)利要求6所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng),其特征在于,還包括單實(shí)例批處理模塊,具體用于: 使用批處理命令獲取待啟動(dòng)的Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串作為啟動(dòng)標(biāo)識(shí)字符串; 使用批處理命令按照啟動(dòng)標(biāo)識(shí)字符串啟動(dòng)Java虛擬機(jī)進(jìn)程; 如果接收到殺死Java虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行指定查殺標(biāo)識(shí)字符串獲取模塊,且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串O
8.根據(jù)權(quán)利要求6所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng),其特征在于,所述標(biāo)識(shí)字符串為啟動(dòng)所對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程時(shí)指定的包括對(duì)應(yīng)jar包包名的程序入口類的名稱。
9.根據(jù)權(quán)利要求8所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng),其特征在于,還包括多實(shí)例啟動(dòng)模塊,具體用于: 獲取生成Java虛擬機(jī)進(jìn)程的jar包; 將所述jar包中Java虛擬機(jī)進(jìn)程對(duì)應(yīng)的程序入口類復(fù)制為多份執(zhí)行相同功能的程序入口復(fù)制類; 修改所述程序入口復(fù)制類的名稱,使得每份程序入口復(fù)制類的名稱唯一; 將修改后具有唯一名稱的程序入口復(fù)制類加入所述jar包; 使用所述jar包按照每個(gè)程序入口復(fù)制類的名稱,分別為每個(gè)程序入口復(fù)制類啟動(dòng)對(duì)應(yīng)的Java虛擬機(jī)進(jìn)程。
10.根據(jù)權(quán)利要求9所述的在Windows系統(tǒng)中對(duì)Java虛擬機(jī)進(jìn)程的管理系統(tǒng),其特征在于,還包括多實(shí)例批處理模塊,具體用于: 執(zhí)行多實(shí)例啟動(dòng)模塊,啟動(dòng)多個(gè)Java虛擬機(jī)進(jìn)程; 將每個(gè)程序入口復(fù)制類的名稱與對(duì)應(yīng)的jar包的包名組成對(duì)應(yīng)每個(gè)Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串,作為每個(gè)Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串; 如果接收到殺死Jav a虛擬機(jī)進(jìn)程的請(qǐng)求,執(zhí)行指定查殺標(biāo)識(shí)字符串獲取模塊,且所述指定查殺Java虛擬機(jī)進(jìn)程的標(biāo)識(shí)字符串為所述指定查殺Java虛擬機(jī)進(jìn)程的啟動(dòng)標(biāo)識(shí)字符串O
【文檔編號(hào)】G06F9/455GK103823710SQ201410079734
【公開日】2014年5月28日 申請(qǐng)日期:2014年3月6日 優(yōu)先權(quán)日:2014年3月6日
【發(fā)明者】王崟平 申請(qǐng)人:北京京東尚科信息技術(shù)有限公司