我在.sh
文件中有这个脚本。
如何将其转换为.bat
文件?
if ! "$JAVA_CMD" -cp "$CP" "$MAIN_CLASS" "$@" 2>/dev/null; then
echo "error: main class is not found."
exit 1
fi
答案 0 :(得分:2)
这大致相当,但任何非零返回值都会回显相同的文本。
@echo off
set CP="c:\mydir\MyClass.jar"
set MAIN_CLASS="MyClass"
java -cp %CP% %MAIN_CLASS% %* 2>NUL
IF %ERRORLEVEL% NEQ 0 ECHO "error: main class is not found."
您可以将错误输出回显给临时文件,然后只需在非零返回上键入文件以显示真正的错误:
@echo off
set CP="c:\mydir\MyClass.jar"
set MAIN_CLASS="MyClass"
set tempError=%temp%\javaRunError.txt
java -cp %CP% %MAIN_CLASS% %* 2>%tempError%
IF %ERRORLEVEL% NEQ 0 type %tempError%
如果你想获得幻想,可以设置一个goto并将退出(errorlevel)传递给调用者。
@echo off
set CP="c:\mydir\MyClass.jar"
set MAIN_CLASS="MyClass"
set tempError=%temp%\javaRunError.txt
java -cp %CP% %MAIN_CLASS% %* 2>%tempError%
IF %ERRORLEVEL% NEQ 0 goto badExit
:: Good-Bye!
:end
echo.
echo.
echo %time% %0 Completed Successfully!
exit /b
:badExit
echo.
echo.
echo %time% Failure Occurred in %0...
type %tempError%
exit /b 1