需求是這樣子滴,因爲我們要部署到linux系統上,用到其他項目的某個main方法,然後傳時間過去,返回數據
String start = request.getParameter("start");
String temp = PropertyUtil.getProperty("D5000path");//讀取配置文件中的路徑
start = start.replaceAll(" ", "\" \"");//時間中間有空格,這樣才能正常傳過去
Process p =Runtime.getRuntime().exec(temp+" "+start);//調用其他項目的main方法
InputStream in = p.getInputStream();
InputStreamReader isr = new InputStreamReader(in);
BufferedReader br = new BufferedReader(isr);
String line ="";
while ((line = br.readLine())!=null){
System.out.println(line);
}
配置文件的路徑
D5000path = java -classpath D://workspace//was//bin com.was.action.HelloWorld
因爲還沒部署,用的就是windows下的路徑,當然我是很簡單的,如果是複雜的,要將用到的jar也寫進去,參考如下:
<entry key="D5000path">java -classpath E:\WorkSpace\D50001\classes;E:\WorkSpace\D50001\lib\axis-ant.jar;E:\WorkSpace\D50001\lib\activation.jar;E:\WorkSpace\D50001\lib\axis-schema.jar;E:\WorkSpace\D50001\lib\axis.jar;E:\WorkSpace\D50001\lib\c3p0-0.9.1.2.jar;E:\WorkSpace\D50001\lib\commons-discovery-0.2.jar;E:\WorkSpace\D50001\lib\commons-logging-1.0.4.jar;E:\WorkSpace\D50001\lib\dbutils.jar;E:\WorkSpace\D50001\lib\hamcrest-core-1.3.jar;E:\WorkSpace\D50001\lib\jaxrpc.jar;E:\WorkSpace\D50001\lib\jta.jar;E:\WorkSpace\D50001\lib\log4j-1.2.15.jar;E:\WorkSpace\D50001\lib\mail.jar;E:\WorkSpace\D50001\lib\ojdbc14.jar;E:\WorkSpace\D50001\lib\wsdl4j-1.5.1.jar; com.eflow.bpa.BpaMain</entry>