2010-06-25 78 views
6

您好我想爲我的java應用程序創建一個exe文件。如何在java中創建一個exe文件

我嘗試了一些第三方軟件JEXECreator,成功創建了exe文件,並且在我的系統中工作正常,當我嘗試使用另一臺機器時,它無法正常工作。我得到以下錯誤

* The error occurred while running the application. The exit code is 0x10000223. 
    * Contact the vendor of the application for troubleshooting. 

    java.lang.ClassNotFoundException: com.sample.SampleMain 
     at java.net.URLClassLoader$1.run(Unknown Source) 
     at java.security.AccessController.doPrivileged(Native Method) 
     at java.net.URLClassLoader.findClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClass(Unknown Source) 
     at java.lang.ClassLoader.loadClassInternal(Unknown Source) 
     at java.lang.Class.forName0(Native Method) 
     at java.lang.Class.forName(Unknown Source) 
     at com.ucware.JEXEClassLoader.run(Unknown Source) 
     at com.ucware.JEXEClassLoader.main(Unknown Source) 
    ************************************** 

我知道我設置的類路徑有問題。

其實我想要自己創建exe文件,而不使用任何第三方軟件。

我發現在很多創建了一個名爲Sample.mft清單文件與以下內容

  Manifest-Version: 1.0 
     Main-Class: 
     Class-path: 

在這個網站

的步驟,我有些懷疑,

  1. 如何應該添加Main-Class,包括完整的包名稱(com.sample.SampleMain)或類名稱(SampleMain)或擴展名(SampleMain.class)

  2. 應如何添加類路徑,我的項目中有4個java類和2個jar。如何在類路徑中添加所有這些,並且是否需要在類路徑中添加java jdk。

  3. 凡manifest文件應保存

  4. 應該是什麼清單文件擴展名(MF或MFT)

  5. 在命令提示符下從哪個目錄,我應該從我的項目中創建EXE文件(文件夾或src文件夾或其中包含所有的java類有什麼語法應而在命令提示符下創建罐子使用的文件夾)

(jar cmf Sample.mf Sample.jar Sample1.class Sample2.class Sample3.class Sample4.class jar1.jar jar2.jar)像這樣或(jar cvfm Sample.jar sample.mf * .class)

當我做了這樣的事情時,我得到了一個jar而不是exe文件,當我在命令提示符下使用「java -jar sample.jar」運行jar時,我得到的class not found異常「。

其實如何創建一個exe文件,而不是jar文件,這意味着只需雙擊該exe文件,應該在任何機器上運行我的應用程序。

任何人都可以幫助我做到這一點?

在此先感謝。

+1

可能的[爲Java程序創建.exe]的副本(http://stackoverflow.com/questions/516399/create-exe-for-java-program) – 2010-06-25 07:15:51

+1

堆棧溢出在右上角有一個非常漂亮的搜索框角落... – 2010-06-25 08:40:55

回答

-1

那麼我會建議你創建一個bash文件,而不是做複雜的事情,通過雙擊它可以運行你的應用程序。是的,但你不能改變它的圖標,但有很多免費工具可用,您可以輕鬆地將bash文件轉換爲exe。

+0

不,您不能將Bash shell腳本轉換爲Windows可執行文件。 – duskwuff 2017-04-20 01:39:43

1

我個人喜歡JSmooth。這只是包裝。這意味着它仍然是一個Java應用程序。當執行exe文件時,它會將jar打包到一個臨時文件夾,然後執行它javaw -jar ...

第二個選項是gcj。但這絕對是一個不好的選擇。這不會將jar包裝在exe文件中,但它確實將其編譯爲本地系統代碼。但是這太慢了你的應用程序非常。您可以在this topic上查看我的時間的一些結果。

1

我曾與一些Excelsior JET積極的經驗。與gcj不同,它實際上工作並且執行時間比執行的.jar文件的執行時間快。缺點是它不是免費的。

+0

公共非商業項目有免費許可證。 – 2010-12-22 07:25:51

+0

我知道這個老,但我也推薦這個給任何人搜索。 – SevenBits 2013-10-22 21:35:28

0

要創建一個exe文件,我使用launch4j。 Launch4j將jar文件轉換成exe文件,如果我想爲安裝程序打包,我使用InnoSetup。對我來說,launch4j創建的EXE在PC上工作。

相關問題