如何从java代码执行以下命令行表达式?

我正在使用 Mac,我正在尝试使用 java 代码运行以下命令来激活 Sauce 连接以与 Sauce Lab 连接


bin/sc -u "username" -k "ACCESS KEY"

我必须在特定文件夹中运行它,假设我的文件夹位于其中


/Users/username/Documents/sc-4.5.4-osx

但当我运行代码时出现异常


java.io.IOException:无法运行程序“/Users/username/Documents/sc-4.5.4-osx”:错误=13,权限被拒绝


包括下面的代码


String[] command = { "/Users/username/Documents/sc-4.5.4-osx", "bin/sc -u username -k accesskey" };    

    try {

        Runtime.getRuntime().exec(command);

        System.out.println("tunnel started");

    } catch (IOException e) {

        e.printStackTrace();

    }


PIPIONE
浏览 71回答 1
1回答

牛魔王的故事

您需要命令数组中的第一个字符串作为可执行文件本身,而每个附加元素都是命令的参数。正如@Gordon Davisson 指出的,这个 String[] 预计将采用解析后的形式。现在它正在尝试执行不起作用的目录。尝试将其指定为:String[] command = { "/Users/username/Documents/sc-4.5.4-osx/bin/sc", "-uusername", "-kaccesskey" };
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java