2011-12-12 160 views
0

我在启动我的Java应用程序时有一个(相当典型的)安装程序,通过一个批处理文件调用具有适当参数的jar文件,大多数情况下绝对正常。但是,我希望能够处理任何可能发生的错误。处理从批处理文件运行Java的错误

目前我有类似

java -Xms1024m -Xmx1024m -jar Quelea.jar 
IF NOT (%ERRORLEVEL% == 0) cscript MessageBox.vbs "Application failed to start." 

最后一行是基本上就this question第一个答案。

虽然我想要一些功能更全面的功能,即使它是从启动过程捕获输出并将其转储到消息框中的情况(好吧,它不是很漂亮,但它不应该显示从它开始,当它出现,然后给我一些即时调试信息,而不必要求用户抓取日志文件!)或者是否有任何其他方法,人们在类似的情况下使用?

我不是在谈论我的代码中抛出的异常(我一旦处理应用程序就开始处理这些异常)我正在讨论阻止它启动的硬错误,比如使用旧的JRE版本,没有足够的内存来保留对于堆,就是这样的事情。

回答

2

我建议使用Java可执行封装。我喜欢以下,但也有其他人。

http://launch4j.sourceforge.net/

+0

谢谢,我想我试图破解我的方式轮下载和包括launch4j在我的构建脚本,但它似乎就像是迄今为止这一个最明智的选择。 – berry120