作者icespeech (Ice)
站内java
标题Re: [问题] 如何将JAVA转成执行档(exe)?
时间Thu May 22 19:15:20 2008
※ 引述《CoMix (CoMix)》之铭言:
: 昨天是凌晨两点说... =..="
: 我是的软体是JSmooth 不过使用上有点复杂...
: 在网路上好像找不太到 相关的教学 ...
: 後来有用GOOGLE 有找到一篇自己稍微看的懂的 也有转成exe档 不过里面很多指令不懂
: http://0rz.tw/19490
: % cd .../classes % jar -cvmf manifest.txt 要建立的JAR档.jar MyApp.class
: % java -jar JAR档名.jar
: 上面那两行虽然是照着打 不过完全不懂意思...
: 转完後exe档好像不能单一个执行 要把它放在与之前程式的资料夹中才可以执行
: 不然点两下就会跳掉~
: 想问板上有类似经验的人 都是怎麽转成exe档的
: (补充 ^^")
: 如果是JAVA转成的exe档 要是对方电脑没有装JVM 那可以执行嘛!?
jar 是一个把 .class 档跟其他有用的杂七杂八档
包装起来的压缩程式,可以想成 zip 或 rar。
"jar -cvmf manifest.txt 要建立的JAR档.jar MyApp.class"
前面 jar 不用多说,请想想看你用 javac 时的用法。
-cvmf 是参数,
这四个的意思大概是 "存成新档、显示过程、使用清单、指定档名"
我想你可以自己去查一下。
manifest.txt 就是你 -m 参数使用的清单
内容要写什麽我想你也可以去查一下 XD
(话说我之前用好像不是这个副档名)
要建立的JAR档.jar 就是你指定把要压缩的东西们压成的档名。
MyApp.class 就是要压进 .jar 档的东西,
不过你这样写的话,
整个 .jar 档里面只有 MyApp.class 这个档案而已,
如果你程式执行时还需要别的 .class 或别的其他档案,
就没有办法执行,
我想你之所以要放在原本的资料夹底下大概是这个原因吧。
附带一提,这并不是什麽 .exe 档,
.exe 档只有微软在用,
把程式做成一个只有微软才能跑的档案不符合 java 的精神吧,
所以当然 .jar 档也要有 jvm 才能跑,
毕竟你打 java -jar JAR档名.jar 的时候
它其实也是在跑里面的 .class 档而已。
==
结论:可以查的到的问题请多多动手查 :P
另外有错还请告知 ^^"
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.70.215
※ 编辑: icespeech 来自: 140.113.70.215 (05/22 19:16)
1F:推 shooting12:路过想问一下怎摸把.jar and JVM 包在一起 05/22 19:40
2F:推 toyhsu:楼上 应该不行吧 我好像没看过 05/22 20:16
3F:推 teman:要包在一起不是不可能 但不是直接跟jar档包 而是作成安装档 05/25 11:20
4F:→ teman:例如用InsallAnywhere这个部属安装工具 可以让你选是否包JRE 05/25 11:23