小弟写了一个小程序,编译成功了,在dos下也正常运行。我用jar命令把生成的所有class文件都打包成一个jar文件,接着用exe4j生成了一个exe文件。按照网上步骤说的一步一步做下来可是生成的exe文件只能在我的机子上运行,拿到没装jre的机子上就不行了。网上说,把jre打包进exe,这样下来最后的exe文件有好几十M,可是我的只有几十K,说明jre没有打进去。请问这是什么原因?是生成的jar有问题,还是exe4j的问题呢,本人菜鸟,望各位大虾指点!

解决方案 »

  1.   

    exe中没有JRE是打包的问题,打包时应该有选项在exe中加入JRE
      

  2.   

    是你理解错了,jre不是打包进exe里,而是和exe放一个文件夹下,也就是说,如果你想打包的exe在任何没装JDK的window系统下运行的话,必须附带一个jre。
    其实个人不建议附带jre,因为一个jre就好几十M,附带着的话太臃肿了。虽然简化可以减小体积,不过非常繁琐,而且很难保证你程序运行时不会出现问题。感觉还不如让用户去下一个jre
    其实之所以打包成exe,主要是防止别人反编你的代码。还有就是让那些经常使用windows系统的用户不至于感到生疏。