不明白我的.bat文件中的一行

时间:2017-09-27 06:39:13

标签: batch-file processbuilder

它写在我的代码

process = new ProcessBuilder(actualPath, arguments, startupFilePath).start();

其中

**actualPath**='E:\...build\libs\Mock\StartDriverDelivery.bat'

**arguments**='java -Dsun.java2d.d3d=false -Xms64m -Xmx96m "-Xbootclasspath/a:$(VUERoot)java\lib\PVTextExtension-1.1.0.jar;$(VUERoot)java\lib\PVTextExtension-1.0.0.jar " vue.exam.driver.init.StartupFileInitializer -Xms64m -Xmx512m' 

**startupPath**='"E:\Code\GITHUB\deliverymanager\build\libs\config\evt\64316e\1.startup"

如果上面的代码语句正在调用StartDriverDelivery.bat文件,有人可以确认我吗? 如果是,我如何将“arguments”变量传递给我的bat文件?

我的bat文件内容是:

@echo off

SET MyPath=%~dp0
SET JREHome=%MyPath%..\..\..\
IF EXIST %JREHome%..\..\gauge\libs\JRE\jre1.8.0_91\bin\javaw.exe (
    SET JavaExe=%JREHome%..\..\gauge\libs\
) ELSE (
    SET JavaExe=%JREHome%
)
set CLASSPATH=%JREHome%*
SET JAVA_ARGS=-Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=8000,suspend=n

SET OP="ExamDelivery"

"%JavaExe%JRE\jre1.8.0_91\bin\javaw" "-Djava.library.path=%JavaExe%JRE\jre1.8.0_91\bin"  %JAVA_ARGS%  com.vue.exam.deliverymanager.sampleDriver.Main %OP% %*

有人让我知道最后一行在bat文件中做了什么? ...... com.vue.exam.deliverymanager.sampleDriver.Main%OP %% *

如何将“arguments”变量传递给我的bat文件,后跟sampleDriver.Main类?

1 个答案:

答案 0 :(得分:0)

最后一行是运行java。请参阅java documentation。传递给javaw命令的最后一个参数是%*,这意味着您的批处理文件传递了它收到的所有参数。看来根据参数字符串将几个参数传递给您的bat文件,您应该可以通过附加到该字符串来添加其他参数。