日期:2014-05-20  浏览次数:20714 次

求助!java下运行多行dos命令不成功。有原程序。
问题:到了数据库的时候不见数据库启动?
postgresql   数据库
环境变量是进到\bin目录
pg_ctl   为数据库启动命令。

下resin同。
各位大哥帮帮手。

package   com.jasinda.JToNTservice;

import   java.io.BufferedReader;
import   java.io.IOException;
import   java.io.InputStream;
import   java.io.InputStreamReader;
import   java.io.OutputStream;

public   class   TestNTService   {

/**
  *   @param   args
  */
public   static   void   main(String[]   args)   {
//   TODO   Auto-generated   method   stub

Process   pro;
try   {
pro   =   Runtime.getRuntime().exec( "cmd ");
System.out.println( "000000 ");
InputStream   is   =   pro.getInputStream();
//InputStream   isES   =   pro.getErrorStream();
OutputStream   os   =   pro.getOutputStream();
String   sCmd0   =   "cd   %PGSQL_HOME% ";//   such   as   dir
os.write(sCmd0.getBytes());
System.out.println( "111111 ");
System.out.println();
String   sCmd1= "pg_ctl   -D   ../data   start ";
os.write(sCmd1.getBytes());
System.out.println( "222222 ");
System.out.println();
// try   {
// pro.wait(1000);
// }   catch   (InterruptedException   e)   {
// //   TODO   Auto-generated   catch   block
// e.printStackTrace();
// }
String   sCmd2   =   "cd   %RESIN_HOME% ";
os.write(sCmd2.getBytes());
System.out.println( "333333 ");
System.out.println();
String   sCmd3= "httpd.exe ";
os.write(sCmd3.getBytes());
System.out.println( "444444 ");
System.out.println();
BufferedReader   br   =   new   BufferedReader(new   InputStreamReader(is));
while   (true)   {
String   s   =   br.readLine();
if   (s   ==   null)
break;
System.out.println(s);
}
//br.close();
}   catch   (IOException   e)   {
//   TODO   Auto-generated   catch   block
e.printStackTrace();
}
//   从is和isES中可以得到数据


}

}}


------解决方案--------------------
写成.bat批处理文件再执行试试
------解决方案--------------------
String sCmd0 = "cd %PGSQL_HOME% "
像这中命令后面加上 "\n ",表示回车。否则不会运行。
还有最好将命令运行的输出显示出来,否则看不到运行结果,不方便调试。
------解决方案--------------------
楼主是贩毒的吧,这么多
------解决方案--------------------
这么多病毒,怕怕的
------解决方案--------------------
学习
------解决方案--------------------
养毒的。。
------解决方案--------------------
我要成立一个养毒专业户,欢迎楼主加盟. ^O^