簡體   English   中英

帶有bin / bash的進程執行程序在JAVA中不起作用

[英]process exec with bin/bash is not working in JAVA

我正在嘗試在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});

.............

有人看到代碼有問題嗎?

您是否正在檢查錯誤流和退出代碼?

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”看起來很奇怪,如果當前目錄不符合預期,可能會出錯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM