java调用python指定virtualenv虚拟环境下才能运行的python文件
来源:互联网 发布:微盘源码搭建 编辑:程序博客网 时间:2024/06/03 05:17
有时候我们想要通过java调用一个python文件,而这个python文件又必须在特定的virtualenv虚拟环境下才能运行。如果直接将这个python文件所需要的包安装到python系统环境下难免有些暴力,我想到了如下方法解决这个问题:
创建虚拟环境后,如果虚拟环境的文件夹叫做env,我们平时激活虚拟环境的命令是 source env/bin/activate 。在bin目录中还有一个文件叫做activate_this.py,我们通过这个文件切换到虚拟环境,在一个python文件(假设叫a.py)中调用该文件(activate_this.py),再书写想要调用的目标python文件,再由Java调用a.py即可完成指定虚拟环境下的python文件调用。
python文件名为a.py,代码如下
import osactivate_this = 'path/to/activate_this.py'execfile(activate_this, dict(__file__=activate_this))os.system("python target.py")
java代码
import java.io.BufferedReader;import java.io.InputStreamReader;public class Test {public static void main(String[] args) {try {System.out.println("start");Process pr = Runtime.getRuntime().exec("python /home/kui/桌面/a.py");BufferedReader in = new BufferedReader(new InputStreamReader(pr.getInputStream()));String line;while ((line = in.readLine()) != null) {System.out.println(line);}in.close();pr.waitFor();System.out.println("end");} catch (Exception e) {e.printStackTrace();}}}
0 0
- java调用python指定virtualenv虚拟环境下才能运行的python文件
- Python的虚拟环境virtualenv
- Python的虚拟环境virtualenv
- Python的虚拟环境virtualenv
- Python的虚拟环境virtualenv
- Python的虚拟环境virtualenv
- virtualenv : python的虚拟环境
- Python的虚拟环境virtualenv
- python虚拟环境-virtualenv
- python虚拟环境-virtualenv
- Python 虚拟环境:Virtualenv
- Python 虚拟环境:Virtualenv
- python 虚拟环境 Virtualenv
- Python 虚拟环境:Virtualenv
- Python虚拟环境virtualenv
- Python 虚拟环境:Virtualenv
- Python 虚拟环境:virtualenv
- Python 虚拟环境:Virtualenv
- final使用方法总结
- Java 多线程(七)——线程组与线程池
- 整数划分的递归实现算法
- OpenGL之VS2015编译问题
- POJ3377
- java调用python指定virtualenv虚拟环境下才能运行的python文件
- hdu 6006 Engineer Assignment(状压)
- 如何线程安全的使用HashMap
- Linux 系统目录结构
- Word Break
- HashMap和Hashtable的区别
- DiskLruCache
- Go语言学习系列--序言
- Java 多线程(八)——实现简单线程池