【发布时间】:2015-07-31 08:55:49
【问题描述】:
当尝试从 bat 脚本调用 Eclipse RCP 应用程序时,如果 Eclipse 异常终止,那么我们将以 System.exit(10) 退出 RCP 应用程序。当我尝试从脚本执行 echo %ERRORLEVEL% 时,它显示的是 0 而不是 10。
而如果我对普通的 Java 应用程序做同样的事情(比如借助 JAR 文件),那么它的日志记录为 10。
知道为什么 Eclipse RCP 拒绝设置 ERRORLEVEL 吗?
【问题讨论】:
-
在 RCP 退出后,是否有任何包装脚本可能会通过运行某些东西来吞噬
ERRORLEVEL? -
请编辑您的问题以包含您的相关源代码以运行此应用程序并获取其错误级别。
-
您不应该使用 System.exit() 以错误级别退出 RCP 应用程序,而是使用 IApplication.start() 的返回值。什么样的问题让你想使用 System.exit() 关闭?
-
@McMonster:感谢您的及时回复!!,我的 bat 脚本在其自身中调用 RCP 应用程序。如果在我的 RCP 执行过程中观察到任何错误,那么我们将以错误代码的形式进行标记(例如 5、6 等,用于各种目的),并且调用 bat 脚本应该知道这个退出值。如果我尝试像 echo %ERRORLEVEL% 一样记录 ERRORLEVEL,则脚本始终打印为 0。 注意:如果我通过脚本调用 NORMAL JAVA APPLICATION,则行为正常。即,通过调用脚本显示的 JAVA APPLICATION 设置的任何 ERRORLEVEL 都相同
-
@Kenster:对我之前的评论有什么想法吗??
标签: java eclipse eclipse-rcp rcp errorlevel