从Java调用Python程序

时间:2014-04-14 11:48:49

标签: java python

我有一个用C语言开发的控制台应用程序。我需要从我的java代码中调用这个程序函数。另外,我需要传递一些参数,例如List<>调用后的主函数。我研究了一个找到的this链接,但是它是用于J Python代码的。我们是否有类似的C Python设施?

1 个答案:

答案 0 :(得分:0)

import java.io.IOException;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

public class SystemCall{

        private static Log logger = LogFactory.getLog(SystemCall.class);

    public static int execute(String command) {
        int result = 0;
        if (command == null){
                throw new RuntimeException("harness command is null");
        }
        Runtime r = Runtime.getRuntime();

        try {
            Process p = r.exec(command);
            try {
                if (p.waitFor() != 0) {
                    result = p.exitValue();
                }
            } catch (InterruptedException e) {
                logger.error("System call interupted.", e);
                //TODO
            } finally {
                //TODO
            }
        } catch (IOException e) {
                logger.error("IO error in system call.", e);
                //TODO
        }
        return result;
     }
 }