[英]How to execute Java code from Batch script?
我必须使用批处理脚本执行Java代码,其中Java代码必须采用从.bat文件生成的变量值并执行Java代码,然后将另一个变量值返回给.bat。
换句话说,exec.bat文件il获得一个值“ 456”。此“ 456”必须发送到java文件,执行后,我们得到另一个值“ 789”。我希望将此“ 789”返回到exe.bat。
请让我知道要在Java和批处理文件中编写的代码和语法。
提前致谢
这是一种方法:
在Java代码中:
在程序的末尾放置这一行
System.exit(789);
这里789
是您将返回到批处理文件的值。
在批处理文件中:
@echo off
java Test %1
set exitcode=%ERRORLEVEL%
echo %exitcode%
这里
java Test %1
是通常的Java执行,带有从批处理文件传递的参数,其中%1将映射到从命令提示符传递到批处理文件的第一个参数( 例如,明智的做法是您可以拥有%2等等 …… 请查看本文 )。
ERRORLEVEL
是用于存储从Java返回的值的标准批处理变量
假设您的批处理文件名为Test.bat
,则从命令提示符下运行批处理为
Test 456
编辑 :两个数字相加的示例
Example.java
public class Example extends TestBase<String>
{
public static void main(String[] arg){
int result = Integer.parseInt(arg[0].trim()) ;+Integer.parseInt(arg[1].trim())
System.exit(result);
}
}
编译该文件并生成一个类文件Example.class
批处理文件:
Example.bat
@echo off
java Example %1 %2
set exitcode=%ERRORLEVEL%
echo %exitcode%
将此批处理文件和Example.class放在文件夹中。 从该文件夹中打开命令提示符,并运行如下
Example 111 222
这将打印这两个数字的加法
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.