簡體   English   中英

如何在復制virtualenv文件夾后激活Cygwin中的virtualenv

[英]How to activate virtualenv in Cygwin after copying the virtualenv folder

在這里完成初學者 試圖建立一個燒瓶網絡應用程序。 使用Windows 8。

在Cygwin中激活我的python virtualenv時遇到一些問題。 到目前為止我一直在使用git shell,沒有任何問題。

我將我的文件夾(“app”)復制到我的cygwin主目錄中,它的設置如下:

app - templates
    - static
    - flask - env - scripts - python
                  - ...
    - hello.py
    - ...

我將目錄更改為app文件夾,然后當我輸入命令激活我的virtualenv時:

$ source flask/env/scripts/activate

終端顯示:

(env)

所以我認為它正在工作,直到我仔細檢查哪個python:

$ which python

並返回我原來的全局python安裝,而不是虛擬環境。 我檢查了已安裝的軟件包,以便仔細檢查我正在使用的python環境。

我在git shell中使用相同的命令,它激活了正確的virtualenv。 我哪里出錯/我需要改變什么? 如果您需要更多信息,請與我們聯系。

我使用cygwin創建了一個新的虛擬環境,當我激活新的環境時,它切換到了那個環境。 為什么它不能用於我復制的文件夾?

我使用cygwin創建了一個新的虛擬環境,當我激活新的環境時,它切換到了那個環境。 為什么它不能用於我復制的文件夾?

最后一句是真正的問題。 您嘗試激活的方式是正確的。 問題是不能移動virtualenv目錄。

virtualenvactivate腳本在內部使用絕對路徑。 如果移動目錄,路徑將不再起作用,因此which pythonPATH上找到第一個有效二進制文件,這是您的全局二進制文件。

如果您需要將項目移動到其他位置,並將virtualenv與它一起移動,則重新創建virtualenv,不要復制它。 建議的做法是使用requirements.txt文件,並使用pip install -r requirements.txt安裝軟件包。 這樣,重新創建virtualenv非常容易:創建一個空的virtualenv,然后運行pip ...命令。 virtualenv中應該沒有其他內容需要移動,只有pip放在那里,或其他python安裝程序腳本,如果你使用任何(除了pip你需要重新運行)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM