java 如何生成可以在一个完全脱离jvm 的win 系统中运行的可执行文件呢?

解决方案 »

  1.   

    好像不行吧,java本身的可移植性就是基于JVM的亚!!!
      

  2.   

    gnu的gcj
    不过不推荐。因为失去了使用java的意义
      

  3.   

    哦,补充一句,gcj其实就是GCC带的一个功能。
      

  4.   

    各位兄弟,现在可以不要说java的真正意思,它的不受OS的限制性,会java的人都知!对于程序的用户来讲,他只是一个用户,根本就不需要知道这些!他只要用这个软件易安装,易使用就OK啦。既然选择java就会遇到这个问题,因为我是写程序的,有个jvm当然没有问题啦,但是我没有理由要我的java程序用户(如果很多的话)每个都配置一个jvm的,如果这样的话,那就痛苦罗!
      

  5.   

    去和微软打官司吧
    要bill在win里集成java环境
      

  6.   

    把JVM集成进去吧,那样安装起来超简单,可以做到只要把文件夹复制给用户就可以了,基本上不用配置
    呵呵,绿色软件哈:)
      

  7.   

    同意
    lenoli(可乐吧) 
    能在没有JVM的机器上运行,
    就不是Java了。
      

  8.   

    最终用户只需要安装 JRE 
    JRE是一个很小的东东,大约14M, 10几M的环境便可进入 Java的多姿多彩的世界
    如今随便一个软件也不只这么大吧。你可以把它和你的软件一起交给用户。
    如果你的用户对于安装几百M的Office没有意见,为什么会对多安装10几M的软件有意见呢?
      

  9.   

    我倒是想说点好像不太沾边的,有几个人用的是正版的Windows呢?
      

  10.   

    to iWANGLAN(偶像卡卡)  这和正不正版win有关系?to  usabcd(9号公路上的3名共军) 
    可是office本身是一个软件,并不需要加外安装一个软件支持java 是一种语言,程序语言生成的可以是一个软件(有大小)
    为什么这个软件不可以独立运行于某一特定的环境呢?
      

  11.   

    个人认为:
    java的可移植性对于开发者确实有很大的意思
    但是对于普通用户来说真的没有多大实质性的意义
      

  12.   

    java确实有这问题
    java所谓的移植性其实是建立在sun在你机器上安装的另一个操作系统jvm
    你需要强制你的用户安装jvm或者copy一个jre库过去,那么你的软件必须或至少要附带上10几M的jre
    有利必有弊
      

  13.   

    找个编译成native机器码的编译器?
    前面有这个回复,楼主可以去看看是否满足需求啊回复人: riverwater(小河流水) ( ) 信誉:100  2004-11-01 11:30:00  得分: 0  
     
     
       gnu的gcj
      

  14.   

    如果你的用户不是嫌大了,·那很好办,找个工具比如InstallAnywhere做个安装包不就结了
      

  15.   

    把jvm打个包不就好了,其他的语言做的程序不是也需要些dll之类的?比如一些游戏就要安装DirectX,字体啊等等之类,没有还不是也运行不了
      

  16.   


       真说起来,OFFICE不依托其他的软件吗?NO,它需要依托别的软件上--windows操作系统之上C\VB写的程序也不过是依靠操作系统的标准函式库,也算不上独立。微软学的倒是很乖,.net如今也是通过可再发行组件包来运行在WIN98,WIN2000或XP平台上。
      

  17.   

    脱离jvm虚拟机,编译成本机机器码也许可以。没做过。
      

  18.   

    把jre拷到你的程序目录里不就完了。
      

  19.   

    java 如何生成可以在一个完全脱离jvm 的win 系统中运行的可执行文件呢?== 怎么在一个没有安装操作系统的PC机上运行Micorsoft Office呢?
      

  20.   

    这真是难题!
    我没有听说过。不过我想,如果没有java的环境,还叫作 java 的程序 么?
    我又想,如果你自己做一个完全的 java=>bin(机器码)的编译器,也许“可以”运行,但已经不是 JAVA 了?!
      

  21.   

    可以的,你用jbuilder6以上的版本就可以,那里面有选项,可以把jvm之类的作进去,可是生成的文件会很大,我现在正在作。。一起进步吧,呵呵
      

  22.   

    做一个文件夹,把你的程序放在这个文件夹里,也就是把这个文件夹作为根目录,下边可以新建你的包目录。
    把JDK下的JRE文件夹拷贝到这个根文件夹里,在你的JDK文件夹内寻找一下几个文件:log4j-1.2.8.jar(可选)、runtime.jar、rt.jar,把这几个文件都拷贝到根文件夹里。
    在根文件夹里新建一个.bat的批处理文件,内容如下:
    set classpath=.;%classpath%;./log4j-1.2.8.jar;./runtime.jar;./jre/lib/rt.jar
    set path=%path%;./jre/bin
    .\jre\bin\java.exe test.MyTest这里的test.是你的包名,MyTest是你的程序名称。执行这个.bat文件,就可以执行你的程序了。
    这种方式就让你的程序自带了jre,不用安装单独的jre,缺点是使你的程序总体积变大,jre差不多就有40多m了。:)
      

  23.   

    基本上没什么可能,因为必须要用的JAVA虚拟机。
    要不然就算你集成了JVM的你的软件里面,但同样的软件会变得很大,所有还不如装JVMJK
      

  24.   

    记得可以编译成完全本地代码(对于windows就是exe)的吧?怎么大家都说不行呢?
      

  25.   

    我想问一些朋友一个问题:
    你到网站下载了一个软件,你需要知道它是java or C++ 写的??我是用户,管它是什么写的!ms office 系要运行于windows 上,是需要windows 的运行库支持!
    windows 是OS
    没有OS jre 生存何方?我的意思是java 的可移植性 是否可以直接在编译成不需要jre 的windows 下的可执行文件与 linux 下的可执行文件。
    比如: xxx for windows 或 xxx for linuxIceCraft(心淡情浓)的方法可行。不过搞到软件包太大了。
      

  26.   

    不用再想了.没有运行环境(JRE).就不可以运行JAVA程序...这是一定的.什么方法都必须有JRE才行.
      

  27.   

    做少量修改就可以放到VS J#或是VS J++ 上编译,这样出来的EXE文件就呆不依赖JVM执行了!
    不过我觉得这样好像有点对不起SUN. 呵呵!
      

  28.   

    简单的程序可以,但是如果用到很多外部包中的类,就要把这些类全部本地化。比如用了Swing,就要把Swing中用到的类本地化,因为这些类的执行是依赖于JVM的。太麻烦了,不是做不到,但好像不可行噢。
      

  29.   

    java前景如何啊~~~~面对微软~~~~~~~
      

  30.   

    呵,可以做成EXE文件,装上JRE,用JB打好你的文件,把你的程序放到WIN下,双击就可以运行啦。
    其实在WIN下开发软件一样,只不过在你安装程序的时候已经把环境装上去而已。