我们正在通过Shell脚本调用Eclipse RCP应用程序。如果Eclipse RCP应用程序异常退出,则由于外壳程序无法识别Eclipse RCP应用程序的返回代码,因此未正确设置ErrorLevel。
关于如何通过Eclipse RCP应用程序设置%ErroLevel%的任何想法?
最佳答案
这应该很简单:只需添加System.exit(<your error code>);
批处理文件示例:
java -classpath "%~dp0dist\StackOverflow3.jar" retvalue.RetValue
echo batch layer: %ErrorLevel%
pause
示例Java来源:
package retvalue;
public class RetValue {
public static void main(String[] args) {
System.out.println("returning with 5");
System.exit(5);
}
}
控制台输出:
C:\daten\chris\source\netbeans\StackOverflow3>java -classpath "C:\daten\chris\source\netbeans\StackOverflow3\dist\StackOverflow3.jar" retvalue.RetValue
returning with 5
C:\daten\chris\source\netbeans\StackOverflow3>echo batch layer: 5
batch layer: 5
C:\daten\chris\source\netbeans\StackOverflow3>pause
Drücken Sie eine beliebige Taste . . .