批处理运行java抛出%ERRORLEVEL%

来源:互联网 发布:市政给排水设计软件 编辑:程序博客网 时间:2024/06/05 04:48

一般批处理里检测一条命令是否成功执行

if not %ERRORLEVEL%==0 (    goto Error)


执行一条java命令

java -jar tools\exportClientData.jar %DATA_IN_PATH% %DATA_OUT_PATH%

正常情况下,上面的错误判断可能不起作用,异常可能try catch住了

分析下:

%ERRORLEVEL%是错误代码号 0 = 正常

C里面是直接通过main 函数里的 return 1

java main 返回值是void,不能用上面这种方式,java提供里另外一种方式 System.exit(1);


sample:

export.bat

@echo onset JAVA=E:\sdk\Java\jdk1.6.0_21\bin%JAVA%\javac Test.javapause%JAVA%\java Testpauseif not %ERRORLEVEL%==0 (    goto Error)goto end:Errorecho *** build process stopped, an error occured ***pause:endecho *** Everything is ok ***


Test.java

public class Test {public static void main(String[] args) throws Exception {System.out.println("test01");System.exit(1);}}


结果:


原创粉丝点击