2011-09-09 74 views
5

我將Python代碼拆分爲Web前端和消費者後端。後端必須在Jython下運行,以便與某些Java庫互操作,但是我們希望在cpython/mod_wsgi中運行webserver,因爲我們通過Jetty在Jython中運行它的內存問題。python/jython共存於virtualenv

我們使用virtualenv進行開發,目前我有兩個virtualenv目錄,一個用於cpython,一個用於jython。我的問題是兩位口譯員是否可以在一個virtualenv中愉快地共存(主要是爲了省去兩次更新已安裝的庫,還有好奇心)。我已經初始化同一環境中與兩個解釋:

virtualenv -p python environ 
virtualenv -p jython environ 

我可以同時運行解釋,我可以符號鏈接ENVIRON /庫/站點包ENVIRON/lib目錄/蟒蛇/站點包所以他們都在看同一個地方。只要沒有依賴C擴展/優化的庫,我看不出爲什麼它們在兩個解釋器中都不起作用。任何人不同意或有任何進一步的事情要注意?

回答

0

我不明白爲什麼這兩個應該不能共存 - 它們使用完全不同的基礎結構,只共享.py文件。 Jython是一個java程序,Python是C; Jython編譯爲$ class文件,Python編譯爲.pyc;等等等等。

只需要注意(除了避免在Jython中使用基於C的模塊)就是將PYTHONPATH和JYTHONPATH設置爲相同的值(Jython不使用PYTHONPATH)。