1
我在Linux中遇到了Java Runtime
的问题。我需要执行以下命令:带有简单引号的Java Runtime.getRuntime()。exec()
blastdbcmd -db ' “MYDB”' -info
所以我用这个Java代码:
String[] cmd = new String[] {blastdbcmd ,"-db", "\'","\"", mydb,"\"","\'","-info"}
Process p = Runtime.getRuntime().exec(cmd);
p.waitFor();
,但它不工作:每次我得到一个java.lang.NullPointerException
例外... 任何人都可以帮助我吗?
如果我尝试:
blastdbcmd -db “mydb的” -info
它的工作原理,但简单的引号是必要的,如果我有一个像
命令blastdbcmd -db“mydb mydb2”-info
你应该先学习如何接受回答回答你过去的问题。详情请看这里:http://stackoverflow.com/faq#howtoask – 2012-02-17 10:13:46
'blastdbcmd'没有包含在一个字符串中,即“blastdbcmd”。如果这不是问题,那么你在哪里得到NullPointerExcepiton? – 2012-02-17 10:15:21
@EmilH如果'blastdbcmd'不是一个包含String的变量,他会得到一个编译错误,而不是NullPointerException(这是一个运行时错误)。 – 2012-02-17 10:21:38