shell 了解在命令行中运行Java程序的语法

iqih9akk  于 2023-01-26  发布在  Shell
关注(0)|答案(1)|浏览(125)

我试图理解这个批处理作业文件,有两个,第一个是返回退出代码0:

set JAVA_HOME="C:\Program Files(x86)\Java\jre1.8.0_221\bin"

%JAVA_HOME%\java -Xms125M -Xmx512M -Djava.ext.dirs=lib org.pg.test.ListOutput > output.txt 2>exception.txt

第二个返回的退出代码为1:

set JAVA_HOME="C:\Program Files(x86)\Java\jre1.8.0_221\bin"

%JAVA_HOME%\java -Xms125M -Xmx512M -Djava.ext.dirs=lib org.pg.test.ListOutput 1 0 > output.txt 2>exception.txt

文件名后面的1 & 0到底是什么意思?为什么这会使它返回一个退出代码1?
两个文件都正常运行,并在output.txt中成功输出。
试图谷歌的确切语法,这是在(批处理文件不是我写的),但也许我在寻找错误的东西。

nafvub8i

nafvub8i1#

可以找到java命令的文档

  • here,适用于JDK/JRE版本18(相当新的版本),以及
  • here for JDK/JRE version 1.8 for Windows,这似乎是您正在使用的。

类名后面的1和0是Java程序运行时传递给它的参数,至于为什么这会导致程序以特定的退出代码退出,这取决于程序做什么,不看程序的源代码是不可能回答的。

相关问题