使用java中的参数运行bash脚本,启动appium节点不起作用

时间:2016-06-21 10:57:01

标签: java bash terminal appium

我在从java运行bashscript时遇到问题,需要参数并启动Appiumnode。所以我希望在节点运行的地方打开一个物理终端。

我设法使用以下命令启动selenium网格:

rt.exec( new String[] { "/usr/bin/open" , "-a", "Terminal.app", "grid.sh"}) ;

而脚本本身是:

#!/bin/bash
cd ~/../../usr/local/selenium
java -jar selenium-server-standalone-2.53.0.jar -role hub -port 4040

但对于appiumnodes,我们有不同的设备,因此我们有不同的节点。 我想用参数化脚本开始这些:

#!/bin/bash
cd ~/../..
node /Applications/Appium.app/Contents/Resources/node_modules/appium/build/lib/main.js --nodeconfig $1 -p $2 -U $3 -bp $4

但是我无法像在网格中那样在终端中运行节点。

我在这里和其他人尝试了很多解决方案,但没有一个成功。始终没有打开终端,也没有启动节点。

我尝试过的解决方案是:

rt.exec( new String[] { "/usr/bin/open" , "-a", "Terminal.app", "NodeExecutor.sh " + filepath + " "+ Port + " " + parts[1] + " " + bp});
rt.exec( new String[] { "/bin/bash" , "-c", "/bin/bash NodeExecutor.sh " + filepath + " "+ Port + " " + parts[1] + " " + bp});

rt.exec( new String[] { "/usr/bin/open" , "-a", "Terminal.app"});
rt.exec( new String[] { "/usr/bin/osascript" , "-e", "tell application \"Terminal\" to do shell script \""+ filepath + "/NodeExecutor.sh " + filepath + " "+ Port + " " + parts[1] + " " + bp + "\" "});

我的所有bash脚本也设置为可执行文件:chmod +x /PATH...

有人可以帮我这个吗?

0 个答案:

没有答案