首页 文章

如果抛出任何异常,请关闭命令提示符窗口

提问于
浏览
1

我已创建批处理文件并每1小时安排一次 .

以下是批处理文件脚本

set libpath=D:\Batch\Batch_lib
set classpath=%classpath%;%libpath%\aspriseOCR.jar
set classpath=%classpath%;%libpath%\aspriseTIFF.jar
set classpath=%classpath%;%libpath%\cmb81.jar
set classpath=%classpath%;%libpath%\cmbcm81.jar
set classpath=%classpath%;%libpath%\cmbem81.jar
set classpath=%classpath%;%libpath%\cmbicm81.jar
set classpath=%classpath%;%libpath%\cmbicmc81.jar
set classpath=%classpath%;%libpath%\cmbicmcup.jar
set classpath=%classpath%;%libpath%\cmblog4j81.jar
set classpath=%classpath%;%libpath%\cmbsdk81.jar
set classpath=D:\Batch\Batch_1.jar
java -Xms1024m -Xmx1024m -jar Batch_1.jar
exit

此批处理文件超出了可运行的jar文件 . 执行jar后,一段时间后抛出内存异常,命令提示符窗口永远不会关闭,一小时后它也不会启动其他命令提示符 .

所以我关心的是如何在抛出任何java异常后关闭命令提示符?

至少它应该在一小时后关闭 .

1 回答

  • 2

    Java将错误输出到错误流,因此您需要通过重定向到&1来捕获它:

    java -Xms1024m -Xmx1024m -jar Batch_1.jar 2>&1 | find "Exception" && exit

    这应该工作,而不用担心退出代码 .

相关问题