資源描述:
《java+swing打包jar成exe》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、java打包jar成exe并動態(tài)綁定jre再打包成安裝注:以下所有步驟的前提是,把jar文件,ico圖示(pngImage文件夾),第三方j(luò)ar包(lib活頁夾),jre活頁夾,放到同一個活頁夾中。本例放在exe4jInstall4jInnosetup活頁夾下,如圖0如圖0首先,我們選用exe4j把jar執(zhí)行文件轉(zhuǎn)成exe文件exe4j.exe下載地址:http://www.ej-technologies.com/download/exe4j/files.html程序安裝不在贅述:它要求系統(tǒng)有1.5版本以上的JDK,點(diǎn)Download在線下載,如果你的機(jī)器上有JDK,點(diǎn)Locate
2、找到你機(jī)器上已安裝的JDK目錄下/bin/java.exe就可以進(jìn)行安裝了。下面就使用exe4j轉(zhuǎn)換jar為exe的過程詳細(xì)說明一下:第1步,默認(rèn)即可。直接下一步第2步,如果已經(jīng)有制作好的jar檔,則下面一個"JARinEXE"。對于打包jar檔,在eclipse中右擊項目選導(dǎo)出即可,不會制作jar檔可以給我留言如圖1第3步,上面是項目名稱,可隨便填寫,下面一個寫出你想要將打包后的exe文件輸出的目錄:如圖2第4步,由于我的演示程序是圖形的,所以選第一個,如果你的程序是控制臺的,則選擇第二個,Executablename寫你將要生成的exe檔的名字,IconFile可以選擇生成文件
3、的圖示如圖3第5步,首先,單擊綠色的"+"號,在彈出的窗口中點(diǎn)Archive,然后找到起初已經(jīng)做好的jar檔,如圖4,"OK"后返回,在下面的ClassPath里就出現(xiàn)jar文件路徑后,再在上面MainClass欄內(nèi)點(diǎn)擊找到main所在的類,如圖5,這一步即算完成:如圖4如圖5第6步,一般的應(yīng)該程序都要帶第三方j(luò)ar檔,同步驟5一樣即可,結(jié)果如圖6.如圖6第7步,你系統(tǒng)的JRE版本,上面填個1.5,下面不填也行,如圖7:如圖7當(dāng)然,這樣配置的程序只能在安裝有JRE的機(jī)器上執(zhí)行,發(fā)布時總要考慮的問題就是用戶是否有能力在自己機(jī)器上安裝JRE,總不能發(fā)布一個程序還要用戶自己安裝個JRE吧
4、,下面我就介紹如何將JDK環(huán)境變量動態(tài)打包到exe中,在這里單擊advancedoptions(圖7中有,如圖8),選擇searchsequence。如圖:如圖8在彈出的窗口中,刪除列表中所有項,然后單擊綠+,選擇directory并選擇JRE的根目錄(注意是拷貝后的目錄)即可,(此步注意,選到j(luò)re6檔夾即可),如圖9如圖9點(diǎn)打開,結(jié)果如圖10如圖10單擊ok后,再從圖中單擊advancedoptions,并選擇preferredVM,在彈出的窗口中選擇clienthostspotVM(如圖11),單擊next按鈕繼續(xù):如圖11第8步:配置splashscreen即exe運(yùn)行時的
5、過渡接口圖,設(shè)置如圖12如圖12第9步,直接下一步即可,設(shè)置如圖13如圖13第10步,編輯完成點(diǎn)擊即可生成exe檔(注意輸出目標(biāo)文件夾中不要有相同的目標(biāo)exe文件)注:exe4j未注冊的版本可以在網(wǎng)上隨便找個激活碼。java.exe依照一套邏輯來尋找可以用的JRE,首先查找自己所在的目錄下有沒有JRE,其次查找自己的父目錄下有沒有JRE;最后才是查詢Windows的注冊表?,F(xiàn)在我們的程序可以在任意的計算機(jī)上執(zhí)行了,可是缺點(diǎn)是致命的,比方說我的程序才160K,可是不論走到哪里都要背著70多M的JRE,未免有點(diǎn)小題大做吧,其實作為我們的私有的JRE,好多內(nèi)容都是可以拋棄的。Jre目錄下
6、的license都可以不要,bin下的執(zhí)行檔只需要保留java.exe或者javaw.exe,lib下只要保留rt,jsse,jce,charsets幾個庫就可以了。除了i386和zi兩個子目錄外,其余的子目錄都可以不要。Zi下只需要保留自己地區(qū)的子目錄和其下的一些檔就可以。Lib下除了庫之外的屬性文件等等都要保留。這樣清理一番,JRE仍然有接近50MB。還可以繼續(xù)清理幾個庫檔里面不需要的內(nèi)容,這需要仔細(xì)的整理,會很費(fèi)功夫。最好能寫出一個自動工具幫助我們整理它們。從Sun公司上下到的JMF里面附帶的用Java寫的媒體播放器就自帶了JRE,只有幾個MB。清理過后需要運(yùn)行幾遍我們的應(yīng)用
7、程序,以確保我們的JRE不缺少東西。另外,精簡jre的方法網(wǎng)上很多,下面找了一個,大家可以參考。(此處轉(zhuǎn)載的)整個HtmlFrame2jre6未壓縮前,大約是100M左右,如果把它也放進(jìn)安排包,那么整個安排包的體積將會很驚人,下面對jre進(jìn)行精簡。進(jìn)入jre6目錄,jre6目錄內(nèi),除了bin和lib兩個文件夾外,其它所有文件都可以刪除;進(jìn)入jre6bin,隨便刪除一個文件,雙擊HtmlFrame.exe,如果能運(yùn)行,那么這個文件就是可以刪除的,如果不能運(yùn)行,就把這