我正在使用 StringBuilder 创建一个字符串,然后尝试在 Linux 终端上执行该字符串。但不是执行整个命令,而是执行一半命令然后终止它。这是我的java代码片段:
moteCommand.append("CFLAGS+=-DCC2420_DEF_CHANNEL=1");
moteCommand.append(" ");
moteCommand.append("make telosb install.");
moteCommand.append(moteIdList.get(i).toString());
moteCommand.append(" bsl,");
moteCommand.append(moteAddrList.get(i).toString());
String moteCommand2 = moteCommand.toString();
Process moteProgProcess = Runtime.getRuntime().exec(moteCommand2, null,"/opt/tinyos-2.x/apps/XXX/);
它给了我这个错误:无法运行程序“CFLAGS+=-DCC2420_DEF_CHANNEL=1”(在目录“/opt/tinyos-2.x/apps/xxx”中):java.io.IOException:错误=2,没有这样的文件或目录
我不明白为什么系统进程试图只执行一半的字符串。如果有人知道原因,请告诉我。
谢谢。