制作运行Java的exe
来源:互联网 发布:做视频软件下载 编辑:程序博客网 时间:2024/05/18 00:13
运行java程序时,由于离不开jre,所以在没有jre的机器上调试得复制jre,而且还得在命令行下运行,很不方便。于是就有批处理(*.bat)来帮我们解决这些问题。批处理很方便调试,但实际应用起来:会有窗口一闪而过,而且不能设制漂亮的图标,显然还不够完美。
网上确实有不少免费或收费的java转exe的软件,功能也很强大,网上也都介绍过,可是简单的功能我们自己也可以实现。
原理其实很简单,把class的字节码转换为本地机器的汇编语言显然不现实,我们只要知道如何用批处理就可以了,不就是制作一个exe代替这个批处理嘛。我c语言很菜,更是没怎么接触windows编程,于是我开始想当然的用system(“javaw a.jar”),可是一个Console程序还是会有一个窗口(用的editplus+gcc.exe编译出来的只能是控制台程序)。
没办法了只有使用windows SDK了,做个没有窗口的程序,那如何调用java.exe呢?用system()或是exec系列函数还是会有窗口,还是只有用windows API了,通过查资料得出CreateProcess、shellexecute和WinExec可以用,这几个函数一个比一个简单但功能也越少,就用WinExec吧,够用就行。
新建一个目录test,放入jre的文件夹(如jre1.5.0_14)还有要运行的*.jar(如a.jar),使用dev-c++(用vc,vc++等IDE应该都一样吧)在test文件夹下新建一个windows应用程序工程,再把跟窗口相关的东西删掉,其实就是全删,输入以下程序:
#include <windows.h>
int main ()
{
WinExec("jre1.5.0_14//bin//javaw -jar a.jar", SW_HIDE);
return 0;
}(这个跟控制台程序有什么区别?!我也没深究,大概是与编译方式和库函数有关吧)
编译成功后,就可以很方便的用exe运行java了,还可以在工程属性里设置文件图标,真正做起来一分钟都不到,我看那些转换工具都是这个原理吧。
这个方法我是去年想到的,今天想起来就穿了上来,做好后发现有篇文章提到了这方法,不过是.net的,原理差不多。
- 制作运行Java的exe
- java 制作exe
- java-程序运行外部的exe程序
- java制作exe执行程序
- 为java程序制作exe
- NSIS脚本制作Java程序的EXE启动器
- NSIS脚本制作Java程序的EXE启动器
- Eclipse 开发java 制作exe可执行文件的方法
- java运行指定程序exe
- 将java应用程序打包成独立运行的.exe方法
- java打包成可独立运行的jar和exe
- 我的Demo:Java运行一个exe文件
- 将java应用程序打包成独立运行的.exe方法
- 将java程序编译成独立运行的exe文件
- java程序打包成为可运行的exe文件
- 将java程序编译成独立运行的exe文件
- Java项目下exe文件的路径问题及运行
- reboot.exe的制作过程
- 想要报考一个BO的培训
- Qt4读书笔记12
- c++类的多重继承与虚拟继承
- Linux C常用的头文件
- 常成员函数
- 制作运行Java的exe
- wchar_t与char转换
- 使用ASP生成/导出WORD文档代码
- CVSNT连接速度慢 的解决方法
- 博客是什么东东
- WebService性能测试回顾版-入门篇
- C#的New关键字的几种用法
- 创建SvcHost.exe调用的服务原理与实践收藏
- SendMessage 和 PostMessage 的区别