怎麼將編譯後的java程序變成真正的exe?
如果有
那麼具體的應該怎麼實現
還有就是exe文件的圖標怎麼改?如果沒有
那麼有什麼接近它的方法
讓人看著舒服
有沒有專門的
單獨的為java程序打包的程序?叫什麼名字
如何下載?
可以把普通的Java程序做成真正的exe
也就是單一個exe就可以在沒有安裝JVM的機器上運行
這樣的工具常見的有JET和gcj
前者是收費的
而且做出來的exe還是需要一堆dll
我比較推薦使用gcj
他有windows和Linux版
直接下載zip包
不需要安裝
裡面有不少例子
一些build的批處理文件
從原理來說gcj自己實現了JVM規范
也就是你編寫一個HelloWorld
java
其中的main方法為System
out
println(
foo
);當使用gcj把它做成exe(大約
M)
運行這個exe時
會啟動裡面的一個小型jvm
在這上面跑HelloWorld
曾有人把整個eclipse ide用gjc做成了linux gtk下的native程序
至於圖標
我一年多前用gcj時似乎不支持
不過好像有不少win
的程序可以抽取和更改exe的圖標
其實
把Java做成純exe實在是 吃力不討好
有很多限制
文件又大
我比較傾向另幾種做法
使用InstallAnywhere等工具
制作一個exe的安裝包
用戶可以選擇使用他機器上的JRE或是這個安裝包內的JRE來運行程序
這是很常見的一種做法
如JBuilder就是這麼做的
這樣的好處是不要求對方機器上裝有JRE
而且你原來的程序不需要任何改動
InstallAnywhere中一個壓縮的JRE大概是
M
制作成可執行的jar
也就是在META
INF的MANIFEST文件制定Main
Class
可以通過命令行java
jar jarfile
jar來執行
windows默認的把*
jar使用javaw
jar打開
所以有些機器上可以直接雙擊jar運行
制作偽exe
其實和上一種做法是一樣的
只不過做成exe
調用系統的java
exe來運行它
這樣的工具有nativeJ
exe
j等
btw
像JET/gcj這樣的技術是很先進的
NET在運行機制上和Java類似
但到現在還是沒有成熟的做成真正exe的工具
一定程度上也說明微軟對
NET的信心
以及把基於運行時的軟件做成純exe的意義不大
剛接觸java很容易產生你這樣的想法
等你Java了解多了
就會感覺到Java不像VB
Delphi只是一個語言
而是一個平台
jar是最常用的部署單元
做成exe沒什麼意思
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19272.html