最近在J2SE环境下开发了个程序,组长要我们把这个程序给打包,我们用的机器差的要死,跑不起JBuilder,在网上查了好久,也没查到很明白说明打包成exe可执行文件的方法来。希望高手能指点下,不胜感激!!

解决方案 »

  1.   

    java 程序不建议打包成可执行文件
      

  2.   

    .bat是啥?能说下具体怎么做吗?为什么Java程序不好打包成可执行文件?
      

  3.   

    下载一个exe4j来生成exe,这个我感觉真不错
      

  4.   

    exe4j确实可以打包成exe,不过,还是需要在已经配好jre的环境里运行,如果拿到刚装好系统的机子上,还是不能运行
      

  5.   

    叫你打包是叫你把他们作成*.jar文件,要在里面指明主类(含main()),在jdk的demo里面有很多这样的包,你自己看看
      

  6.   

    网上应该有关于这方面的大量的介绍,搜一搜吧
    我以前做过一个,大概就是先把源程序用jar打包,然后到
    http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm
    下载下来的文件是一个名JavaLauncher.zip的压缩包,解压后的目录结构如下所示:source目录包含了JavaLauncher的源程序,是用C语言写的
    changes.txt是新版的修改说明
    launch.exe是主程序
    launcher.cfg是配置文件
    readme.txt是一些说明和示例我们只需要launch.exe、launcher.cfg两个文件,将这两个文件复制到打包文件所在的目录。launcher.cfg是一个仅三行内容的文本文件,将它修改如下:..\java1.4.2\jre\bin\javaw.exe -jar myswt.jarl           第一行设置指向JAR包myswt.jar的目录,由于launch.exe和myswt.jar同在一个目录,所以用"."即当前目录。l           第二行设置指向jre\bin\javaw.exe的路径。在上一小节(7.1.4节)已将jre目录复制到了java1.4.2子目录中配置好launcher.cfg后,双击launch.exe即可运行java应用程序。如果仔佃研究eclipse的启动方式,发现eclipse和JavaLauncher的原理一样:eclipse.exe相当于launch.exe,startup.jar相当于myswt.jar。只不过eclipse.exe不象launch.exe要具有通用性,所以它没有*.cfg这样的配置文件,而是将启动信息固化在eclipse.exe中。另外如果你没有配置java环境的话,需要装上jre才能运行
      

  7.   

    用exe4J就很好的了.--------------------
    exe4j确实可以打包成exe,不过,还是需要在已经配好jre的环境里运行,如果拿到刚装好系统的机子上,还是不能运行
    -----------------------把JRE目录考到你的jar文件目录来,在exe4j里设置用该目录下的JRE目录中的java命令,把所有的外部要用的第三方JAR包都打进来.给客户时,直接将这个目录制成一个setup安装程序,客户用的时候只要SETUP一下,然后桌面,程序组里都有快捷方式了.你的程序如果用上looks-1.3.1.jar包把feel和look包装一下,有些经过这样处理,有些程序感觉不出来是JAVA程序了我最近就做了一个这样的应用,这样做也是很无奈的.感觉好象是把一个JAVA做的东西躲躲藏藏的拿出去让别不知道这是JAVA做的,但是没办法,那个客户就是不愿意接受还要装JAVA虚拟机这样的麻烦事.弄成这样,他拿到任何一台机上只要setup一下,就可以用了,大家都开心了
      

  8.   

    我那老板的意思就是,把现在做的包装成exe可执行文件,然后放到其他的没有JDK环境的机器上也能运行。
    cql0007说的方法,我没看明白,“把JRE目录考到你的jar文件目录来,在exe4j里设置用该目录下的JRE目录中的java命令,把所有的外部要用的第三方JAR包都打进来.”能详细说明下吗?不胜感激。
    昨天生病了没来上班,不好意思。
      

  9.   

    先准备一个目录,把你的jar包考进去,把你的机器上的JRE目录考进去,例如我的机器是:C:\Program Files\Java\j2re1.4.1这个目录.只要把这个目录的bin和lib目录考进去就可以了.这样就是java程序的运行环境了.
    先用exe4j把你的jar包压成一个EXE文件,在exe4j中注意把所有要用JAVA包都打进去,然后在JRE那项中,有个search sequence的选项,把你这个目录中的BIN目录添加进去,这样以后执行这个程序的时候,就会直接去找这个你自己目录中的java.exe了,不需要系统再安装JDK了然后再找个setup制作程序,把这整个目录制作成一个setup.exe.
    这样用户一运行那个setup.exe,就把这整个目录都考进用户电脑了,客户就不用再另外安装JDK了
      

  10.   

    用批处理文件.bat,方便简单!
      

  11.   

    这个问题,我在JAVA版中见过很多次了,我自己之前也研究过,用过什么exe4j,JSmooth,JShrink,Launch4J等五六个同类软件,发现都是NativeJ最好,因为NativeJ有选项可以把jre也一并合并在一个exe文件中,而且,其它软件生成的exe文件,其实可以用winrar来解压的,只有NativeJ不是这样,他编译出来的EXE是真正的EXE文件,就算客户机子上没装JRE,也照样能运行。
      

  12.   

    cql0007,我用了你的方法,但在最后创建的时候老是说:Compilation failed.Reason:java.io.FileNotFoundException:d:\.test\test.jar(系统找不到指定的目录)这是怎么回事?我是按照网上有人说的方法来用exe4j的啊
      

  13.   

    这样的EXE能在LIUNX和UNIX系统下运行吗?
      

  14.   

    用exe4j还是不行,最后就弹出个框框,里面的内容是:This executable was created with an
     evaluation vertion of exe4j
    然后就什么都没有了,这到底是怎么回事呢?
      

  15.   

    直接用文本编辑器,编写一行:java  yourclassname
    存成.bat文件,双击则可以直接运行了