Python/jython在virtualen中共存

2024-05-14 04:09:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我把Python代码分为web前端和消费者后端。后端必须在Jython下运行,以实现与一些Java库的互操作性,但是我们希望在cpython/mod\wsgi中运行web服务器,因为在Jython中通过Jetty运行它时出现内存问题。在

我们使用virtualenv进行开发,目前我有两个virtualenv目录,一个用于cpython,一个用于jython。我的问题是两个解释器是否可以在一个virtualenv中愉快地共存(主要是为了省去更新已安装的库两次,但也出于好奇)。我用两个解释器初始化了相同的环境:

virtualenv -p python environ
virtualenv -p jython environ

我可以运行这两个解释器,我可以symlinkenviron/Lib/site packagesenviron/Lib/python/site packages,这样它们就可以看到同一个地方。只要没有依赖于C扩展/优化的库,我不明白为什么它们不能同时在两个解释器中工作。有人不同意或者还有什么需要注意的吗?在


Tags: 代码webmodvirtualenvlibpackagesenvironsite
1条回答
网友
1楼 · 发布于 2024-05-14 04:09:44

我不明白为什么这两者不能共存——他们使用完全不同的基础设施,只共享.py文件。Jython是一个java程序,Python是C;Jython编译成$class文件,Python编译成.pyc等等

唯一需要注意的是(除了像您所说的那样避免在Jython中使用基于C的模块),就是将PYTHONPATH和JYTHONPATH设置为相同的值(Jython不使用PYTHONPATH)。在

相关问题 更多 >