我正在编写一个在Linux上运行的java程序。以下是java方法
createHinted3gpFile (String localfile) {
ArrayList<String> cmdArray = new ArrayList<String>();
String hintedFile = localfile+".hint";
cmdArray.add("cp");
cmdArray.add(localfile);
cmdArray.add(hintedFile);
System.out.println ("Command ="+cmdArray);
LocalExecute.exec(cmdArray.toArray(new String[1]));
cmdArray = new ArrayList<String>();
cmdArray.add("/usr/local/bin/MP4Box");
cmdArray.add("-3gp");
cmdArray.add("-hint");
cmdArray.add(hintedFile);
System.out.println ("Command ="+cmdArray);
LocalExecute.exec(cmdArray.toArray(new String[1]));
}
和输出
Command = [/ usr / local / bin / MP4Box,-3gp,-hint,/ opt / modulesGuonnts / 29443b_3gp.hint] [INFO] 11月03日下午23:00.467 PM http-8080-2 [myproject.transcoders.LocalExecute] 处理exitValue:127
如果一切正常,则进程exitValue应为0。 从上周开始,我得到了这个127值!关于发生了什么的任何想法?
由于 安东尼
答案 0 :(得分:3)
/usr/local/bin/MP4Box, -3gp, -hint, /opt/myproject/contents/29443b_3gp.hint
也许这些逗号是你退出价值的原因。
如何从命令行运行此命令?也许这样?
/usr/local/bin/MP4Box -3gp -hint /opt/myproject/contents/29443b_3gp.hint
如果是,那么你需要在执行前删除逗号。
修改:从您的评论中,逗号有问题。
我认为你的方法过于复杂。这对眼睛来说应该更容易:
createHinted3gpFile (String localfile) {
Runtime.getRuntime().exec("/usr/local/bin/MP4Box -3gp -hint " + localfile + ".hint");
}
答案 1 :(得分:1)
127表示“未找到命令”。 /usr/local/bin/MP4Box,
- 真的有逗号吗?