我正在尝试在JAVA中执行以下操作,但它不适用于我:文件opt为空。 程序:RNAfold计算结构:从文件读取:“seq”并写入文件“opt”结构。 (当我从终端运行命令时,它正在完成工作)
**程序创建文件:seq,opt
Runtime rt = Runtime.getRuntime();
Process pr1;
try {
command = "home/ViennaRNA-2.0.7/Progs/RNAfold -T "+Double.toString(tempature)+" --noLP <seq> opt";
pr1 = rt.exec(new String[] { "/bin/sh", "-c",command});
.............
有人看到代码有问题吗?
答案 0 :(得分:0)
您是否正在检查错误流并退出代码?
stderr = pr1.getErrorStream ();
brCleanUp = new BufferedReader (new InputStreamReader (stderr));
while ((line = brCleanUp.readLine ()) != null) {
System.out.println ("[Stderr] " + line);
}
System.out.println ("Exit code: " + process.exitValue());
另外,检查路径是否正确,并尽可能指定完整路径。没有前导斜杠的“home / ViennaRNA-2.0.7 / Progs / RNAfold”看起来很奇怪,如果您当前的目录不符合预期,可能会出错。