目錄結構是這樣的/venv # 這是virtualenv創(chuàng)建的虛擬目錄|--/bin|--/include`--/lib/myapp # 這是我的flask應用地址|--wsgi.py在bash下運行 venv/bin/activate 后切換到虛擬環(huán)境,然后運行 wsgi.py 沒有問題。但是,在sublime text下點擊【Tools】->【Build】提示出錯,說找不到flask模塊,flask模塊是我在virtualenv下用pip安裝的:Traceback (most recent call last):
File "/Users/Toon/Code/myapp/wsgi.py", line 4, in <module>
from flask import Flask, request, session, redirect, url_for, abort, \
ImportError: No module named flask
[Finished in 0.1s with exit code 1]于是我想,這里Build應該沒有導入virtualenv下的site-packages,我對工程文件myapp.sublime-project進行了下列設置{ "folders":
[
{ "path": "/Users/Toon/Code/myapp"
}
], "build_systems":
[
{ "name": "Run Tests", "cmd": ["source", "/Users/Toon/Code/venv/bin/activate"], "working_dir": "/Users/Toon/Code/myapp", "cmd": ["python", "wsgi.py"]
}
]
}保存后build,仍然出現(xiàn)上面的錯誤提示,是不是site-packages仍然沒有被導入呢,問題出在哪了呢?
2 回答

Smart貓小萌
TA貢獻1911條經驗 獲得超7個贊
你忘了指定python環(huán)境了和selecter了
"build_systems": [ { "name": "Run Tests", "env": { "PYTHONPATH": "/Users/Toon/Code/venv/bin/python:/Users/Toon/Code/venv/lib/python2.7/site-packages" }, "cmd": ["python", "$file"], "selector": "source.python" } ]
這樣就可以了,運行應該沒問題了

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
來做一個不一定靠譜的回答
你可以寫一個shell
腳本來包裝它們,如
#!/bin/bashsource /path/to/your_venv/bin/activate python /path/to/your/python_script.py
然后把它作為cmd來執(zhí)行
添加回答
舉報
0/150
提交
取消