「java捕获exe」java捕获异常的方式有哪几种

博主:adminadmin 2023-01-18 21:15:08 188

本篇文章给大家谈谈java捕获exe,以及java捕获异常的方式有哪几种对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

有关JAVA调用类内部路径的EXE的问题

java.awt.Desktop.getDesktop().open(new java.io.File("QQ.EXE"));异常自己处理。

qq.exe的file要找准就可以了。

不过,qq.exe真的是腾讯的那个qq?如果是,那么,单个qq.exe是不能让qq开起来的。而且,qq2009是有注册表关联的,所以直接复制是不能在别的机子上运行的,倒是qq2008就可以。

怎么取被打包成exe的Java文件

第一步,将java项目打包成可执行jar文件,首先看一下我的Java project结构,Main.java是程序入口类,里面有main函数,config目录是些配置文件,lib是用到的第三方类库

开始打包,Simulate(Java项目)-鼠标右键-Export

弹出窗口,选择“JAR file”,点击“Next”

取消勾选“config”和“lib”目录,以及eclipse生成的项目配置文件“.classpath”和“.project”,点击“Next”

一切默认,点击“Next”

在弹出窗口中,选择我们自己创建的MANIFEST.MF文件,点击“Finish”

我的MANIFEST.MF文件内容为:

Manifest-Version: 1.0

Main-Class: bing.Main

Class-Path: . lib/ojdbc14.jar lib/poi-2.5.1.jar lib/jbcl.jar lib/JTattoo.jar lib/liquidlnf.jar

Created-By: IceWee

通过指定“Main-Class”来达到可执行jar文件的目的。其实我们最终是将项目打包成exe,Class-Path可以不指定,在打包exe的时候还要指定classpath的。

第二步,将项目打包成exe,这里要明确一点,并不是把所有的文件都打包成一个exe,资源文件是不能包进去的,往下看↓

首先,在任意目录创建一个文件夹,最好命名和项目名相同,我在F盘创建了一个“Simulate”文件夹,之后将所有的资源文件以及我们生成的可执行jar文件(我的Simulate.jar)都拷贝到这个文件夹里,config目录和lib目录,如果你怕执行该程序的机器上没安装jre,那么你需要将自己机器上的jre目录也拷贝进来,我安装的jre5,最后的目录结构:

打开exe4j,跳过欢迎,直接点击左侧导航的第二项,因为我们已经提前将java项目打包成可执行jar文件了

在弹出窗口,选择“JAR in EXE mode”,点击“Next”

在新窗口中,为我们的应用取个名称,之后选择exe生成目录(我的F:\Simulate),点击“Next”

为我们要生成的exe取名,如果想生成自定义图标,那么选择你的ico文件,如果你不想在一台电脑上运行多个你的程序,你可以勾选“Allow only a single...”,点击“Next”

点击绿色“+”,设置程序运行的Class Path

先选择我们自己的可执行jar文件(我的Simulate.jar),点击OK

我们的Simulate.jar就加到Class Path下了

之后点击General中的Main Class选择按钮,在弹出窗口中,exe4j会自动搜索当前Class Path下的全部jar中包含main方法的类,并列出,因为当前我只选择了自己项目的jar,而我的项目中只有Main.jar包含了main方法,所以一目了然,直接选择它点击“OK”,程序入口类就设置完成了

Main Class设置完成后,依次将所有需要的第三方类库加到Class Path下,方法同添加“Simulate.jar”一样,点击“Next”

输入Java最小Jre版本号,即低于这个版本的Jre无法运行该程序,接着点击“Advanced Options”-“Search sequence”,设置一下我们的JRE,之前说过,如果客户机上没装Jre咋办?,没关系我们捆绑一个进去

点击绿色“+”来选择捆绑的JRE位置

在弹出对话框中选择“Directiony”,之后选择JRE的文件夹,注意:这个JRE目录是我们将本机的JRE目录拷贝到当前exe生成目录下的,我的目录是F:\Simulate\jre5,下图程序使用的是相对目录,点击OK,完成JRE的捆绑操作

JRE捆绑完毕,点击“Next”

默认,点击“Next”

默认,点击“Next”

默认,点击“Next”

exe生成中

OK,完成,点击“Exit”即可

看看成果如何吧!

我们的可执行jar以及第三方jar总共还不到5M,可jre5目录就50多M,如果目标机器上有JRE环境就可以把它删掉了,lib目录是第三方jar文件,现已打包到exe中了,所以它也没有存在的理由了,那么最小配置就剩下了“Simulate.exe”和“config”目录了!

Java如何捕获应用程序的Runtime error

但这些程序存在Runtime error 错误。在运行时会报错误。 我想把这些错误用Java 捕捉到。并将这些Runtime error解释出来 因为Runtime的和Cheched的都继承Exception 虽然严格上说不推荐使用 但我都是try 之后, checked的异常都一个一个罗列出来 最后都再加上catch所有Exception 不行吧,我试过很多中异常捕捉,都不捉不到。是不是因为这个错误时系统错误啊。Java中的Runtime.getRuntime().exec()只负责执行.exe文件但并不能通过catch获得错误信息。 问题补充:mavlarn 写道java捕获的异常,是jvm内部产生的,而调用系统程序,java对它根本没有办法得到任何信息。 mavlarn 写道java捕获的异常,是jvm内部产生的,而调用系统程序,java对它根本没有办法得到任何信息。 p = rtRuntime.exec("d:\\test\\data1.bat"); 小卓SUN 写道引用不行吧,我试过很多中异常捕捉,都不捉不到。是不是因为这个错误时系统错误啊。Java中的Runtime.getRuntime().exec()只负责执行.exe文件但并不能通过catch获得错误信息。Process p = Runtime.getRuntime().exec() p.getErrorStream()n //这个是获取调用程序时候出现的错误 没有仔细看,你描述的并不是RuntimeException 是别的程序的错误 问题补充:那我试试 mavlarn 写道windows程序出错的话,应该是可能会在系统的事件查看器中看到的,但是,java不可能可以访问的到windows系统的事件查看器,因为java不是为windows开发的,这种跟系统相关的功能肯定是没有的。 如果说一定要得到事件查看器里面的出错信息,只有一个办法,就是用JNDI的api,用C写一个获取系统事件的模块,然后在java里面调用。(或者是不用jndi,直接用c写一个可执行的程序,获取系统的事件查看器里的某些事件,然后用系统调用)。但是,这应该很麻烦。 用java做这种跟系统紧密相关的东西,本来就不合适。

java捕获exe的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java捕获异常的方式有哪几种、java捕获exe的信息别忘了在本站进行查找喔。