我正在调用调用Java应用程序的batfile App.bat:
echo %DATE%_%TIME% START >> log.log
App.bat import
echo %DATE%_%TIME% END >> log.logApp.bat中的内容
%JAVACMD% %JAVA_OPTS% %EXTRA_JVM_ARGUMENTS% %APP_OPTS% -classpath %TS_CLASSPATH% org.App %CMD_LINE_ARGS%org.App位于App.jar文件中的位置。
但是,在完成App.bat bat文件之后,包装器bat文件中的最后一行永远不会执行:
echo %DATE%_%TIME% END >> log.log如何在对Java应用程序的调用返回后执行最后一行?
发布于 2015-07-07 11:42:15
您的示例对我很有用,只是我更改了Java类执行部分。
Callme.java
public class Callme {
public static void main(String args[]) {
System.out.println("Called JavaApp");
}
}CallMe.bat
echo %DATE%_%TIME% START >> log.log
java Callme
echo %DATE%_%TIME% END >> log.logbat文件执行后的log.log
07/07/2015_13:39:10,79 START
07/07/2015_13:39:11,31 END好的,现在你已经改变了你的问题,你能试试下面的并检查你是否得到结束日期?
echo %DATE%_%TIME% START >> log.log
call App.bat import
echo %DATE%_%TIME% END >> log.log发布于 2015-07-07 11:52:50
正如您说的那样,您对Java程序没有任何问题,将程序调用为
MyJavaApp import下面的脚本必须工作..。
echo %DATE%_%TIME% >> "d:\New folder\log.log"
MyJavaApp import
echo %DATE%_%TIME% >> "d:\New folder\log.log"再次检查您的Java程序是否已经完成。您还可以通过传递返回代码,再次检查Java程序是否已完成。
System.exit(anyInteger);获得批处理的代码,并检查是否有适当的程序状态。
发布于 2015-07-07 11:31:19
由于我是一个batch程序员,我会告诉你这个(非常肯定它将工作100%。)
从batch文件中删除最后一行,并在java文件中编写代码,启动名为"ENDLOG.bat“的文件。
然后创建一个名为“ENDLOG.bat”的/A batch文件,名为"ENDLOG“。
现在还记得从批处理文件中删除的最后一行吗?放在那个batch文件中。
https://stackoverflow.com/questions/31267270
复制相似问题