在Java中,我們可以將soure代碼編譯成兩種類型的可執行文件:基本上是字節碼的.jar文件和基本上是機器碼的.exe文件。在什麼情況下編譯爲.exe與.jar,反之亦然?哪一個運行速度更快?謝謝。何時使用.jar,與.exe?
回答
創建.exe
文件的唯一原因是使其更容易在Windows中運行應用程序或安裝程序。
Java編譯爲隨後在JVM中運行的字節代碼。通常,.exe只是一個包裝,它確保啓動java
VM,並且運行存儲在.exe(或任何其他位置)中的類字節。
但是.exe文件是機器碼,是嗎?這意味着它比.jar更快(因爲不需要從字節碼轉換爲機器碼)? –
是的,沒有。一個* .exe是maschinecode,但這並不意味着它更快。 –
+內部的類被編譯爲JVM的maschinecode(如果需要的話) –
不完全。有些工具可以從Java可執行文件jar中創建.exe文件,但這絕不是JDK的常規功能。
很少有情況下,.exe文件實際上是必需的,因爲運行常規jar只需安裝Java並正確配置。
一個簡單的測試,以決定是否去jar或一個exe文件是問自己「你需要這是一個.exe文件?」。如果您在5秒內無法回答,請使用jar文件。
- 1. 何時使用.exe,何時不使用?
- 2. Launch4j jar for exe
- 3. 在JAR中創建和使用.exe
- 4. 從.jar創建.exe
- 5. 從.exe獲取.jar
- 6. 如何打開* .jar文件?它與Windows的。* exe相同嗎?
- 7. 如何將jre與從.jar創建的.exe文件綁定
- 8. Eclipse jar的exe文件?
- 9. JAR到EXE轉換器?
- 10. 轉換jar文件到exe
- 11. .Jar to .EXE(加密文件)
- 12. 運行.exe打包在.jar
- 13. .jar X netbeans - .exe特權
- 14. Jsmooth如何將.jar轉換爲.exe?
- 15. 如何將.jar轉換爲.exe?
- 16. 調用jar文件內的exe文件
- 17. 使用JSmooth將Jar轉換爲exe - 無法找到主類
- 18. 使用JNLP時JAR錯誤
- 19. 奇怪的行爲與生成的JAR和EXE
- 20. 保護Jar文件源與exe文件(JAVA)
- 21. 使用各種資源構建可運行的.jar或exe文件 - 如何?
- 22. 包括一個exe文件到jar
- 23. WSO2 ESB/Apache Synapse/VFS執行EXE,jar等
- 24. 隱藏在EXE內部的JAR?
- 25. 運行在jar裏面的exe文件
- 26. Jar to Exe - 找不到主類
- 27. 將EXE運行爲JAR文件?
- 28. Launch4J exe仍然需要jar文件
- 29. 運行jar文件和exe的區別?
- 30. Java代碼來執行JAR/EXE /等
如何編譯爲.exe?你可以創建可執行的jar不exe。 –