本文目錄一覽:
- 1、JAVA代碼寫完如何做成Jar ????求詳細點的答案
- 2、java怎麼打包成jar?
- 3、java怎麼轉化成jar以及jar簡介
- 4、用JAVA代碼怎麼生成JAR,請詳細點我是新手。最好是有圖片解釋的。謝謝謝謝啦
- 5、Java項目怎麼打成jar包
JAVA代碼寫完如何做成Jar ????求詳細點的答案
我一直用eclipse來編寫java程序,最近對手機小程序特別感興趣,所以安裝了WTK和J2ME,通過MIDlet寫代碼,然後很順利的右擊之後就可以Greate Packge,然後生成jar文件,就可以啦~~只是個人意見~~
java怎麼打包成jar?
^^java教程^^《製作可執行JAR》本文闡述了如何把一個不可執行的 JAVAArchive(JAR)文件變成可執行,而不用直接操作manifest文件。你會學到寫出短小的一個程序,通過運行java-jar命令或在像windows一樣的操作系統裡面用雙擊鼠標運行任何JAR文件。
你可以很容易地把應用程序的一整套class文件和資源文件打包到一個JAR中。事實上這就是jar文件存在的一個目的。另外一個目的就是讓用戶能很容易地執行被打包到jar文件裡面的應用程序。那麼為什麼jar文件僅僅作為文件在整個java裡面佔據了次要的地位,而本地執行則被忽視?
要執行一個jar文件,你可以使用java命令的-jar選項。舉一個例子來說,假如你有個名叫myjar.jar的文件。這個jar是可以運行的,你可以運行它:java-jarmyjar.jar.另外一個辦法就是,當JavaRuntimeEnvironment(JRE)已經被安裝到一個像windows的操作系統上,將jar文件與JVM關聯(關聯 java.exe跟jar文件)在一起你就可以通過雙擊jar來運行這個應用程序。當然,jar文件必須是可執行的。
現在的問題是:如何做一個可以執行的jar?
manifest文件以及Main-class入口
在大多數jar中,都在一個叫META-INF的目錄裡面保存了一個叫MANIFEST.MF的文件。那個文件裡面,
包含了一個特殊表項名字叫Main-Class,告訴java-jar命令應該執行哪個class.
問題是你必須為manifest文件手工加入適當表項,而且必須在一定的位置和用一定的格式。不幸的是,不是每個人都喜歡打開寫字板編輯配置文件。
讓API幫你完成任務
自從java1.2發布以來,一個叫java.uil.jar包的出現,讓你能夠方便處理jar文件。(注意:該包基於java.util.zip)特別地,jar包讓你通過Mainfest類,可以容易操作那些manifest文件.
就讓我們用這個API寫一個程序吧。首先,這個程序必須知道三樣東西:
1。我們要使之可運行的jar文件。
2。運行jar的主類(這個類必須包含在jar中)。
3。輸出新jar文件的文件名,因為我們不能簡單地覆蓋原來的文件。
編寫程序
上面列表的三點要求將組成我們的程序的參數。現在,讓我們為這個程序選擇一個適當的名字。
MakeJarRunnable聽起來覺得怎樣?
為main方法檢查參數
假設我們的main方法入口點是一個標準的main(String[])方法。我們應該這樣檢查程序的參數:
if(args.length!=3){
System.out.println(“Usage:MakeJarRunnable” “jarfileMain-Classoutput”);
System.exit(0);
}
請注意參數列表是如何描述的,因為這在以下代碼中是很重要的。參數的次序和內容不是固定的;
然而,如果你要改變他們的話,要記住響應修改其他代碼。
訪問jar和jar的manifest文件
第一,我們必須創建一些了解jar和manifest的對象:
//CreatetheJarInputStreamobject,andgetitsmanifest
JarInputStreamjarIn=newJarInputStream(newFileInputStream(args[0]));
Manifestmanifest=jarIn.getManifest();
if(manifest==null){
//Thiswillhappenifnomanifestexists
manifest=newManifest();
}
設置Main-Class屬性
我們把Main-Class入口放到manifest文件的main屬性部分。一旦從manifest對象獲得這個屬性,就可以設置需要的 mainclass。然而,如果main-Class屬性已經存在原來的jar當中又如何呢?這裡我們只是簡單地輸出一個警告然後退出。我們能加入一個命令行參數告訴程序使用新的值,而代替了舊的那個:
Attributesa=manifest.getMainAttributes();
StringoldMainClass=a.putValue(“Main-Class”,args[1]);
//Ifanoldvalueexists,telltheuserandexit
if(oldMainClass!=null){
System.out.println(“Warning:oldMain-Classvalueis:”
oldMainClass);
System.exit(1);
}
輸出新的JAR
我們需要創建一個新的JAR文件,所以我們必須使用JarOutputStream類。注意:
我們必須確定我們不用跟輸入文件相同的名字作為輸出文件的名字。還有一個方案就是,程序應該考慮到一種情況,就是兩個jar文件都是相同的,促使用戶覆蓋原來的文件,如果他願意這麼做的話。然而,我在保留了這一點,作為讀者的一個練習。從如下代碼開始:
System.out.println(“Writingto” args[2] “…”);
JarOutputStreamjarOut=newJarOutputStream(newFileOutputStream(args[2]),manifest);
我們必須從輸入JAR寫每個表項到輸出的JAR,所以迭代每個表項:
//Createareadbuffertotransferdatafromtheinput
byte[]buf=newbyte[4096];
//Iteratetheentries
JarEntryentry;
while((entry=jarIn.getNextJarEntry())!=null){
//ExcludethemanifestfilefromtheoldJAR
if(“META-INF/MANIFEST.MF”.equals(entry.getName()))continue;
//WritetheentrytotheoutputJAR
jarOut.putNextEntry(entry);
intread;
while((read=jarIn.read(buf))!=-1){
jarOut.write(buf,0,read);
}
jarOut.closeEntry();
}
//Flushandcloseallthestreams
jarOut.flush();
jarOut.close();
jarIn.close();
完成程序
當然,我們必須把這些代碼放到一個類的main方法裡面,並且需要一大堆import代碼。完整程序:
程序使用例子
讓我們把這個程序應用到一個例子裡面來。假設你有一個應用程序,該程序的入口點是一個叫HelloRunnableWorld的類,再假設你已經創建了一個jar叫myjar.jar,包含了整個程序。運行MakeJarRunnable:
javaMakeJarRunnablemyjar.jarHelloRunnableWorldmyjar_r.jar
正如前面提到的,注意一下我的參數順序。如果你忘記了順序,沒有參數運行一下程序,它會響應出現一個用法提示信息。
嘗試對myjar.jar運行java-jar命令。然後對myjar_r.jar。注意區別不同!好了,你完成了這一切了,瀏覽一下每個jar的manifest文件(META-INF/MANIFEST.MF)
java怎麼轉化成jar以及jar簡介
Java文件轉化成har的步驟如下:
1、右鍵文件,點擊導出(Export);
2、選擇Java文件夾下的JAR file,點擊next;
3、在JAR file後面的文本框中選擇導出的位置;
4、接下來全部點擊next;
5、直到最後一個頁面時點擊finish;
6、完成。
接下來介紹下jar:
JAR 文件格式以流行的 ZIP 文件格式為基礎。與 ZIP 文件不同的是,JAR 文件不僅用於壓縮和發布,而且還用於部署和封裝庫、組件和插件程序,並可被像編譯器和 JVM 這樣的工具直接使用。
java中可將自己寫的代碼導成jar文件,下次需要使用時直接導入這個jar包,即可使用這個jar包里的程序。
用JAVA代碼怎麼生成JAR,請詳細點我是新手。最好是有圖片解釋的。謝謝謝謝啦
jar其實是個壓縮文件,和。rar文件是一樣的東西,裡面都是一些。class文件,這些文件都是經過JAVAC編譯後生成的文件,我門運行程序其實就是運行。class文件。jar包就是將這些編譯好的文件打包,在你調用jar包裡面的class時,不用去費時的尋找或者自己定義,最常用的是\jdk5.0\jre\lib\rt.jar這個包,裡面包含拉基本的。class方法文件。可以在命令提示符裡面運用 jar -cvf xx.jar *.*命令來生成jar包,xx是你自定義的名稱,*.*表示該路徑中所有的.class文件,cvf是jar命令的參數。
Java項目怎麼打成jar包
第一種:在jbuilder中:
首先你要保證Run菜單–Run Project能順利運行
然後Wizards菜單–Native Executable Builder
選中Compress the contents of the archive(產生jar文件的話)
Next–Next–選中Always include all classes and resources再Next–Next–Next
選中Windows GUI”exe”(產生EXE文件的話)–Finish
再在項目的文件列表中的Native Executable右擊–Make就可以了
第二種:在cmd 下生成jar文件
abc.txt內容如下:
Manifest-Version: 1.0
Main-Class: main-class-name(回車)
在cmd下:
javac *.java
jar cvfm abc.jar abc.txt *.class
示例——生成能通過鼠標雙擊就執行的.jar文件
一、編寫 Java源程序Test.java如下:
// Test.java
import javax.swing.*;
/**
* @(#) Test.java
* Copyleft (c) 2002 RatKing
* @author a href=”ratking@ynet.com”RatKing/a
* @version 0.1, 2002-11-7
* 描述:一個測試用的Java Application
*/
public class Test extends JFrame {
public Test(String title) {
super(title);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.getContentPane().add(new JLabel(“測試!”, JLabel.CENTER), SwingConstants.CENTER);
this.pack();
}
public static void main(String[] args) {
try {
//UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch(Exception e) {
e.printStackTrace();
}
Test t = new Test(“Test – 測試”);
t.setVisible(true);
}
}
二、編譯Test.java為Test.class(當然假設你事先已經設置好了JDK的環境變量PATH和CLASSPATH)
在命令行執行編譯命令:
javac Test.java
三、用文本編輯器(比如記事本/UltraEdit等 – 甚至用ECHO命令加管道“”)編寫如下manifest文件,並保存為abc.txt
Manifest-Version: 1.0
Main-Class: Test
【注意】文件abc.txt內必須是3行文本:
第一行的內容依次是:“Manifest”、英文減號、“Version”、英文冒號、英文空格、數字“1”、英文句號、數字“0”
第二行的英文冒號與Test之間必須要有一個英文空格!!!如果有包名一定要帶上!!!包名.類名
第三行是一個空行,也就是說,你要在Test之後鍵入一個回車,然後才可以存盤退出!!!
如果冒號後面沒有空格,可以生成jar文件但不能執行;如果Test後沒有回車符,則生成jar文件時會報錯。
該文件可以放在任何目錄下
四、將Test.class打包成.jar文件,並使用abc.txt指明哪一個是帶有public static void main()的“主函數”
在命令行執行編譯命令:
jar cvfm Test.jar abc.txt *.class
如果有包名可以這樣寫,如包名為test,一定要在該包的上一層目錄執行下面這句
jar cvfm Test.jar abc.txt test
你可以使用WinZip之類的解壓軟件看一看剛剛生成的Test.jar文件里到底有什麼。
五、用鼠標雙擊Test.jar的圖標,應該可以看到Test執行後的窗口。
〖說明〗如果你正確地安裝了 Java運行環境(JRE),那麼.jar的圖標應該是象一頁紙並有一個A的形狀,就如同寫字板的圖標。
如果你的.jar文件默認的打開關聯不對,可以重新設置:
我 的電腦-查看(Win9x)或工具(Win2k)-文件夾選項-文件類型-選擇JAR文件-編輯該類型文件的屬 性-操作欄填入[ open ](不填引號和中括號[]),並在“執行操作的應用程序”欄填入[ “C:\Program Files\Java\j2re1.4.1\bin\javaw.exe” -jar “%1” %* ](填兩對英文引號,不填[])
並按“確定”、“關閉”退出對.jar文件關聯的編輯。
(你的javaw.exe文件是不是位於C:\Program Files\Java\j2re1.4.1\bin\路徑下,視你自己電腦的情況而定)
第三種:JB中生成.exe文件
1、菜單中選擇【Wizards】-【Native Executable Builder….】彈出對話框
2、在彈出的對話框中第一步(Step 1 of 7)的【Name】輸入一個名稱,並取消【Always create archive when building the project】點擊【Next】
3、根據需要懸着需要的類,再選擇【Include class dependencies】,點擊【Next】
4、根據需要懸着需要的庫文件,再選擇下面的4個單選,反覆所有的需要的庫,點擊【Next】
5、默認點擊【Next】
6、在(Step 5 of 7)的時候選擇一個主類運行點擊【Next】
7、在(Step 6 of 7)的時候選擇運行平台【Next】
8、默認點擊【Finish】,這時候在工程的目錄窗口出現了一個在(Step 1 of 7)輸入的【Name】目錄
9、右擊這個目錄,選擇【Rebuild….】,Jbuilder就開始編譯和創建執行文件或是Jar文件了
10、等完成之後,該目錄下右幾個文件,一般是有至少一個jar文件,或是一個exe文件
11、在Window打開工程所在的目錄,就可以看到裡面的有幾個剛才編譯的文件
12、執行jar就是用java -jar ***.jar、執行exe直接雙擊
—————————————————————
1、不建議使用jb,因為打包後可執行文件的圖標改不了且jb的可執行文件實際上是可執行的jar文件,可以將其exe擴展名改為jar一樣可執行。
2、還是使用jsmooth較好,首先編寫menifest文件目的指明main類,使用jar命令打包成可執行jar文件,讓後使用開源的jsmooth做成exe。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/270370.html