Batch file 在批处理文件中将vm参数传递给java程序
我试图从批处理文件运行java程序,需要根据某些条件传递参数。根据条件,传递给java命令的参数数量不同。 下面是我尝试的代码Batch file 在批处理文件中将vm参数传递给java程序,batch-file,memory,command,conditional,Batch File,Memory,Command,Conditional,我试图从批处理文件运行java程序,需要根据某些条件传递参数。根据条件,传递给java命令的参数数量不同。 下面是我尝试的代码 @echo off set vmargs1 = "-Xms512m -Xmx512m -XX:MaxPermSize=256M -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=25" set vmargs2 = "-Xms512m -Xmx512m -XX:MaxPermSize=256M" IF condition1 ( ja
@echo off
set vmargs1 = "-Xms512m -Xmx512m -XX:MaxPermSize=256M -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=25"
set vmargs2 = "-Xms512m -Xmx512m -XX:MaxPermSize=256M"
IF condition1 (
java %vmargs1% MyJavaClass
)
IF condition2 (
java %vmargs2% MyJavaClass
)
对于条件1,我需要将vmargs1作为虚拟机参数传递以启动java程序。对于条件2,我需要传递vmargs2作为启动java程序的虚拟机参数。
我在设置vmargs1和vmargs2的值时遇到问题。在上面的代码中,没有设置这些值。
在调用java程序时使用%vmargs1%和%vmargs2%是正确的,或者有其他方法吗?如果是,请建议 删除set命令上的空格和双引号
set vmargs1=-Xms512m -Xmx512m -XX:MaxPermSize=256M -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=25
set vmargs2=-Xms512m -Xmx512m -XX:MaxPermSize=256M