并行运行来自不同编程语言的两段代码

时间:2017-10-02 05:51:12

标签: java python

有没有办法在一个应用程序中并行运行python中的函数和java中的函数,并获得每个函数的结果来执行另一个过程?

3 个答案:

答案 0 :(得分:2)

至少有三种方法可以实现这一目标。

a)您可以使用java.lang.Runtime(如在Runtime.getRuntime().exec(...)中)启动外部进程(从Java端),外部进程是您的Python脚本。

b)你可以像a)一样,只使用Python作为启动器。

c)您可以使用一些Python-Java绑定,并且从Java端使用单独的Thread来运行您的Python代码。

答案 1 :(得分:1)

您应该寻找 jython 。此支持JavaPython

答案 2 :(得分:-1)

问题相当含糊,没有具体的用例,但我可以建议编写shell脚本的通用方法。

如果将它们单独放在单独的.py和.java文件中,并将它们的输出写入临时文件,则可以同时运行Python和Java函数,这样就可以使用这些值进行进一步的计算。

my-shell$ vi my_script.sh

#!/usr/bin/env bash
python python_file.py argument1 argument2 >> py-output.txt
echo "completed execution of python script." 
javac JavaFile.java
java JavaFile >> java-output.txt
echo "completed execution of java funtion."

注意:这假设您的bash脚本与python和java文件位于同一目录中,否则,只需提供文件的完整路径。

保存脚本后,通过键入chmod u+x my_script.sh使其可执行。然后,运行它,瞧,你已经完成了。两个.txt文件,包含两个函数的输出,供您随意使用。