java项目调用其他项目main方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_39578388/article/details/80584675

需求是这样子滴,因为我们要部署到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>

猜你喜欢

转载自blog.csdn.net/qq_39578388/article/details/80584675