我在Mac OS和谷歌的雲平臺開發。 我創建了vitualenv - virtualenv xyz
。 我激活使用 - 源XYZ /斌/激活 然後,我安裝我所需要的PKG - pip install python-dateutil
當我做pip list
,我確實看到了python-dateutil
有 但是,當我使用dev_appserver.py .
運行我的服務,並設法使一個職位請求。我收到ImportError: No module named dateutil.parser
蟒蛇VIRTUALENV無模塊錯誤
問題:在我的appengine_config.py
中,我有vendor.add('lib')
,但軟件包安裝在my_project-> xyz -> lib -> python2.7 -> site-packages -> dateutil
下。我的應用程序如何知道在哪裏查找包?
第二個問題:當我準備部署到生產,我怎麼部署的軟件包。 pip freeze > requirements.txt
。這足以讓prod服務器知道要使用哪些軟件包。我需要在my_project下的lib
文件夾嗎?我對包是如何在virtualenv和生產中被引用感到困惑。
因此,如果我使用標準環境,每次啓動新項目時,如何安裝沒有安裝軟件包的新環境。基本上和virtualenv一樣。 –
對不起,我不確定我是否收到你的問題。在stdenv中,你總是從沙盒提供的軟件包開始(在SDK的本地系統上)。任何額外需要添加到您的應用程序。 –
在我的開發環境中,可以說我正在處理項目1並執行了'pip install python-dateutil'。我猜這是安裝在我的全球環境。我切換到項目2(仍在我的開發中),它將有權訪問全局包,但我不想在項目2中引用python-dateutil。如何爲每個項目保留python包的單獨副本。 –