eclipse中的java包awt_Eclipse中打包java程序
Java應用程序可以脫離Eclipse運行,但在運行之前要把應用程序打成一個JAR包,Eclipse下打包的方式方法和標準的AWT/SWUNG程序基本一樣,主要有以下幾點:
a.MANIFEST.MF(艙單):打包清單文件。它是打包的關鍵文件,在運行Java應用程序時,需要根據此文件的信息來查找入口類和支持庫。
b.支持庫:如果Java應用程序用到了一些Eclipse包,那么就必須將這些包也復制到程序運行目錄,否則程序無法運行,如SWT組件支持庫swt.jar,JFace組件支持庫jface.jar等,這些JAR包都要在MANIFEST.MF文件中設置好。
c.本地化文件:如果用到SWT組件,還需要將SWT的本地化文件swt-win32-3235.dll(3235是版本號)復制到程序運行目錄,否則程序無法運行。
打包的具體的操作步驟
1.創建清單文件
Eclipse提供了用于打包項目的“導出”向導,但運行向導之前需要創建一個清單。在項目根目錄下(也可以是其他目錄)新建清單文件manifes.txt(可任意名)。Eclipse向導在打包時,會自動地將manifes.txt的內容復制到JAR包的META-INF目錄的MANIFEST.MF文件中。manifes.txt內容如下:
Manifest-Version: 1.0
Class-Path: ./lib/org.eclipse.swt.win32.win32.x86.jar
Main-Class: cn.com.chengang.swt.SashForm1
(空行)
Mainfest-Version:指定清單文件的版本號。
Class-Path:指定支持庫的路徑。“.”指程序運行目錄,即導出的JAR包所在的目錄。每個支持庫之間用空格隔開。
Main-Class:指定程序運行的入口類(全類名,不加擴展名class)。
注意:設置限不區分大小寫,如Clsaa-Path可以寫成class-path等;Class-Path可能要設置很多支持庫,最好寫在一行并以空格隔開,也可以分行寫,但行首必須帶一空格:
Class-Path: ./lib/org.eclipse.swt.win32.w(行首不能有空格)
in32.x86.jar(行首必須帶一個空格)
常見錯誤:Invaild or corrupt jarfile ***.jar錯誤,3個設置項的冒號后面需要至少一個空格;Could not find the main class. Program will exit.Main-Class中SashForm1后面不能有空格;Failed to load Main-Class manifest attribute from ***.jar,必須最后多出一個空格。
2.使用Eclipse “導出”向導來打包項目
右擊項目名。選擇導出命令,在對話框中選擇JAR文件選項;
將不需要導出的文件取消復選框,并選擇輸出路徑和包名,注意:雖然現在了src目錄,但Java源文件不會導出到包中,除非選中了“導出Java源代碼文件和資源”;
指定清單->從工作空間中使用現有清單;(也可以生成清單文件)
3.復制Java應用程序的支持庫及本地化文件
把支持庫復制到Class-Path指定的目錄,并修改為指定的文件名稱。在這里把支持庫eclipse/plugins/org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar復制到打出JAR包目錄/lib下,并重命名為org.eclipse.swt.win32.win32.x86.jar。
用解壓工具打開org.eclipse.swt.win32.win32.x86.jar,從中將swt-win32-3235.dll復制到JAR包目錄(Windows平臺的本地化文件)。
4.編寫運行jar包的run.bat
在JAR包目錄先新建run.bat批處理文件,內容為javaw -jar HelloWorld.jar即可
在運行時會有一個討厭的黑色命令窗口,要去掉它,可以修改為start javaw -jar HelloWorld.jar,start相當于Windows的“運行”命令;如果想把swt-win32-3235.dll放在獨立的文件夾中,如**/native目錄,則改為start javaw –Djava.library.path=./native/ –jar HelloWord.jar。
其他得到JAR包的方式
1.使用JDK自帶的jar.exe命令
jar cvfm HellloWorld.jar ***\manifes.txt -C ***\bin .
cvfm是jar命令4個參數的組合:c指創建新的JAR包,v指調試信息打印到屏幕,f指定jar文件名,m指使用自定義的清單文件;“-C 路徑 .”:將某路徑下的所有文件打包,bin目錄下式編譯后的class文件,所以源路徑指定為它。
2.使用Fat Jar插件打包項目
安裝插件Fat Jar,右擊項目,選擇 "BuildFatJar” 命令
Jar-Name項輸入JAR包名,Mainfest不用填寫,默認會自動創建一個清單文件,Main-Class填寫入口類,其他設置不變。
項目所用到的支持庫都會列出來,選擇需要的即可,當然全選也可以,只是最后的JAR包會更大一些,因為Fat Jar會將所有支持庫合并在一個JAR包中。
單擊完成,JAR包會輸出到項目目錄中,和以前一樣,要運行此JAR包需要批處理文件以及本地化文件。唯一不同的是不在需要Eclipse支持庫,因為所有庫已經打包到JAR包中了。
讓用戶不必另外安裝JRE環境
運行Java程序一般要求用戶電腦先安裝JRE環境。雖然安裝JRE環境很簡單,但是畢竟多了一步。不必安裝JRE環境的實現步驟如下:
1.將JDK下的jre目錄復制到JAR目錄\java目錄下(java可換為其他名稱);
2.修改批處理文件為 "start java\jre\bin\javaw –jar HelloWorld.jar”,新命令給javaw指定了相對路徑;
3.雙擊bat文件即可在沒有安裝JRE環境的電腦中運行此Java應用程序。
創建EXE執行程序及美化圖標
1.使用JavaLauncher創建exe
JavaLauncher是一個開源的免費小程序,下載JavaLauncher,解壓目錄文件如下:
source目錄包含JavaLauncher的源程序,使用C語言寫的;changes.txt是新版的修改說明;launch.exe是主程序;launcher.cfg是配置文件;readme.txt是一些說明和示例。
只需要兩個文件launch.exe和launcher.cfg,將它們復制到JAR包所在目錄。launcher.cfg是一個僅3行的文件,修改如下:
.
javaw.exe
-jar HelloWorld.jar
第一行是JAR包的目錄,此時launch.exe和GAR在同一個目錄下;第二行是javaw的路徑。配置好后,雙擊launce.exe即可運行java應用程序。
2.美化圖標
launch.exe的圖標太單調了,可以使用免費軟件Resource Hacker給它換一個。
下載Resource Hacker,運行ResHacker.exe,選擇主菜單“文件-打開”,將launch.exe文件載入。展開“ 圖標-1-1030 ”結點,選擇“替換資源…”
“打開新圖標文件”,然后單擊替換即可。注意:圖標文件可以是exe、dll、res、ico,該軟件會從這些文件中抽取出圖標。最后“文件-保存為”新文件取名為newtest.exe。
轉自:?http://www.cnblogs.com/houkai/archive/2013/10/18/3375871.html
總結
以上是生活随笔為你收集整理的eclipse中的java包awt_Eclipse中打包java程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [云炬创业基础笔记]第六章商业模式测试1
- 下一篇: [云炬创业基础笔记]第六章商业模式测试1