簡體   English   中英

設置 PYTHONPATH,當 virtualenv 被激活時

[英]Set PYTHONPATH, when virtualenv is activated

此刻,我正在使用pyenv + venv來管理Python版本和特定庫。 我的項目布局如下所示:

  1. 目錄1
    • 子目錄11
    • 子目錄12
    • 子目錄13
  2. 目錄2
    • 子目錄21
    • 子目錄22
    • 子目錄23

我的目標是,一旦venv被激活dir1dir2sys.path內。 基本上,我解決了這個任務,但我真的不喜歡解決方案。 我在bin/activate文件下的venv添加了自定義PYTHONPATH ,一切正常。 從部署的角度來看,這不是那么靈活。 venv是否為此提供了一些hooks 例如:一旦激活venv或運行一些 function 或類似的東西,設置客戶environment variables 我不喜歡在每台機器上修改bin/activate文件的想法。
PS 我知道包裝的東西和setuptools ,但對於這個項目我不能使用它。

有任何想法嗎?

謝謝 !

另一種可能性(這通常是我使用的並且避免進入你的 venv 源代碼):

創建一個activate.sh腳本,您可以在其中導出模塊的路徑並激活 venv,即:

source venv/bin/activate
export PYTHONPATH=$PYTHONPATH:$(pwd)

那么你可以只做source activate.sh而不是source venv/bin/activate ,你將同時擁有這兩個動作。

暫無
暫無

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

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