命令行获取java程序执行结果

stokr 2008-07-18 04:03:51
用批处理运行一个jar包,现在我需要根据java程序执行结果(比方说检验通过和不通过)批处理有不同的处理,
请问命令行如何获取java程序的这个信息。
...全文
655 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsc20051426 2009-03-18
  • 打赏
  • 举报
回复
楼主有空看看Process类
墨梓霖 2009-03-15
  • 打赏
  • 举报
回复
顶!
fcz2004 2009-03-02
  • 打赏
  • 举报
回复
顶一下
x5315323 2008-11-06
  • 打赏
  • 举报
回复
http://70.86.178.187/?fromuser=x5315323
CSH_Hai 2008-08-05
  • 打赏
  • 举报
回复
顶一下,加油
stokr 2008-07-21
  • 打赏
  • 举报
回复
好几天没上,这个问题用了13楼的办法解决,非常感谢,我原先也打算通过java程序写文件,批处理读文件来实现,但总觉得不是太好。
sagezk 2008-07-18
  • 打赏
  • 举报
回复
如果 Java 程序执行后的输出结果比较复杂,那么用
[code=BatchFile]FOR /F ["options"] %variable IN ('command') DO command [command-parameters][/code]
来分析输出的结果也可以,这个实现起来更灵活。
zhj92lxs 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 kokobox 的回复:]
引用 17 楼 java2000_net 的回复:
顶一下的肺


o(∩_∩)o...哈哈

果子 这都想到了,这帖子收藏一下
[/Quote]
kokobox 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 java2000_net 的回复:]
顶一下的
[/Quote]

o(∩_∩)o...哈哈

果子 这都想到了,这帖子收藏一下
jdlsfl 2008-07-18
  • 打赏
  • 举报
回复
强人
bootupnow 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 bao110908 的回复:]
if errorlevel 1 goto 1; 后面不用那个分号,用了好像也没错,呵呵

如果检查不通过的话(因为也没有异常产生),对调用者来说是正常结束的,这里得手工返回退出码 System.exit(1)
如果检查通过的话可以什么都不做,由 JVM 自动返回 0
[/Quote]
学习
老紫竹 2008-07-18
  • 打赏
  • 举报
回复
顶一下的肺
happystarting 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 sagezk 的回复:]
BatchFile codejava YourApp > logfile.txt
java 分析logfile.txt的程序


然后启动个程序分析 logfile.txt(里面记录了 java YourApp 程序的输出信息) 里面的结果。
[/Quote]
hmsuccess 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 bao110908 的回复:]
调用应用程序的退出码保留在 ERRORLEVEL 的环境变量之中,可以通过这个值来进行操作。
如果程序是正常退出将返回 0 值,否则返回非 0 值。

使用 java -jar test.jar 运行时,正常中止时返回 0 给调用者,非正常中止时返回 1
给调用者,可以采用下面的批处理来判断:


BatchFile code@echo off
rem 运行程序
java -jar test.jar
rem 如果返回值大于等于 1 表示运行出错,转入错误处理
if errorlevel 1 goto 1;

[/Quote]
这个怎么弄,没见过,请教
  • 打赏
  • 举报
回复
if errorlevel 1 goto 1; 后面不用那个分号,用了好像也没错,呵呵

如果检查不通过的话(因为也没有异常产生),对调用者来说是正常结束的,这里得手工返回退出码 System.exit(1)
如果检查通过的话可以什么都不做,由 JVM 自动返回 0
  • 打赏
  • 举报
回复
调用应用程序的退出码保留在 ERRORLEVEL 的环境变量之中,可以通过这个值来进行操作。
如果程序是正常退出将返回 0 值,否则返回非 0 值。

使用 java -jar test.jar 运行时,正常中止时返回 0 给调用者,非正常中止时返回 1
给调用者,可以采用下面的批处理来判断:

[code=BatchFile]@echo off
rem 运行程序
java -jar test.jar
rem 如果返回值大于等于 1 表示运行出错,转入错误处理
if errorlevel 1 goto 1;

rem 运行正确
echo ok!
goto end

rem 错误处理
:1
echo error!
goto end
:end
echo on[/code]
fuyou001 2008-07-18
  • 打赏
  • 举报
回复
顶11楼
sagezk 2008-07-18
  • 打赏
  • 举报
回复
[code=BatchFile]java YourApp > logfile.txt
java 分析logfile.txt的程序[/code]
然后启动个程序分析 logfile.txt(里面记录了 java YourApp 程序的输出信息) 里面的结果。
duzhonghua 2008-07-18
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 zq620901 的回复:]
顶,学习
[/Quote]
zq620901 2008-07-18
  • 打赏
  • 举报
回复
顶,学习
加载更多回复(7)

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧