做一個(gè)簡(jiǎn)單的測(cè)試:
依據(jù)與猜想:Java程序在執(zhí)行前會(huì)首先查找自己所在的目錄下有沒(méi)有JRE;其次查找自己的父目錄下有沒(méi)有JRE;最后才是查詢Windows的注冊(cè)表(詳見(jiàn)王森的《Java深度歷險(xiǎn)》)。那么對(duì)于第三方庫(kù)文件的使用,Java程序是不是也遵循這一規(guī)則呢?
Step1:將項(xiàng)目中用到的第三方庫(kù)文件放到項(xiàng)目文件夾中,并在項(xiàng)目屬性中將導(dǎo)入的外部JAR指向該位置。
Step2:使用Eclips導(dǎo)出Jar文件,在對(duì)話框中選擇放入父目錄中的第三方庫(kù)文件,然后依次完成后續(xù)操作。
Step3:將項(xiàng)目目錄中第三方庫(kù)文件隱藏或是刪除,防止導(dǎo)出的Jar文件在執(zhí)行時(shí)讀取該文件。
最后,開(kāi)始測(cè)試…失敗…可見(jiàn)其對(duì)第三方庫(kù)文件的使用是沒(méi)有上述規(guī)則的。
BTW:一直沒(méi)搞明白Eclipse中,”項(xiàng)目”菜單->”屬性”->”Java構(gòu)建路徑”->”排序和導(dǎo)出”選項(xiàng)卡中,對(duì)”導(dǎo)出的條目”是怎么定義的,只是選上了第三方庫(kù)文件后,項(xiàng)目目錄中的”.classpath”文件中,在第三方庫(kù)文件描述行中多了”exported=true”,上述測(cè)試也考慮了這個(gè)因素,但還是不行,不知道這是什么意思…
當(dāng)然,你也可以使用BAT腳本進(jìn)行打包操作,我沒(méi)試過(guò),如果有高手熟悉這方面的操作,可以與我交流一下。
而使用FatJar插件時(shí),只要將插件放入Eclipse的plugins文件夾內(nèi),重啟Eclipse。當(dāng)我們?cè)?#8221;窗口”->”首選項(xiàng)”中看到”Fat Jar Preferences”時(shí),說(shuō)明插件安裝成功了。
什么?你沒(méi)有看到?不用著急,刪除Eclipse文件夾下\configuration\org.eclipse.update\platform.xml文件就可以了。
使用:在需要導(dǎo)出的Java項(xiàng)目上右擊,選擇導(dǎo)出,選擇”其他”中的”Fat Jar EXporter”,即可進(jìn)行打包操作。注意選擇好”Main-class”以及需要打包的文件。
當(dāng)然,如果你愿意,你也可以將JRE打包進(jìn)去,這樣,在沒(méi)有安裝JRE的機(jī)器上也可以運(yùn)行你的Java程序。
FatJar插件下載地址:http://sourceforge.net/project/showfiles.php?group_id=115990&package_id=125924
下載地址2:http://rosibo1.bibidu.com/server7/erttre3/net.sf.fjep.fatjar_0.0.27%B4%F2%B0%FC%B2%E5%BC%FE.zip
聯(lián)系客服