问题描述:
安装QTP后,需要一段java程序,首先使用cmd运行,cmd下运行正常。
将其放入到QTP中。
运行QTP,cmd报错。
开启一波解决方式:
1:picked up的两个环境变量是安装QTP的时候安装上的,百度搜索问题解决办法是果断删除,结果不行。
2:比对上方两个黑图,发现运行QTP时命令窗口增加了一段话。
我的电脑--相同环境变量中放入一样的内容,cmd下运行也报出相同的错。
详细查看这个_JAVA_OPTIONS:
Picked up _JAVA_OPTIONS: -Xrunjvmhook -Xbootclasspath/a:"F:\Program Files (x86)\HP\Unified Functional Testing\bin\java_shared\classes";"F:\Program Files (x86)\HP\Unified Functional Testing\bin\java_shared\classes\jasmine.jar" -Xbootclasspath/p:F:\Program Files (x86)\HP\Unified Functional Testing\bin\
发现-Xbootclasspath/p:F:\Program Files (x86)\HP\Unified Functional Testing\bin\
这句没有给路径加上双引号,于是环境变量中加入双引号,cmd下运行成功。
再次使用QTP,依然报错,依然报错,我纳闷QTP这么高大上的工具竟然没有判断一下,有这么个参数,就不应该主动加了。
3:野路子出世,强制使用set为_JAVA_OPTIONS赋值。
运行,成功赋值!!
然后正儿八经的赋值,运行成功。
InvokeApplication "cmd /k set _JAVA_OPTIONS=-Xrunjvmhook -Xbootclasspath/a:""F:\Program Files (x86)\HP\Unified Functional Testing\bin\java_shared\classes"";""F:\Program Files (x86)\HP\Unified Functional Testing\bin\java_shared\classes\jasmine.jar"" && E: && cd E:\yingwuhuan\DeploymentTools_all\DeploymentTools && java -jar GetFixedTd.jar && exit"
注意vb的双引号的转义为两个双引号。