![](/img/trans.png)
[英]How do you fix a Trac installation that begins giving errors relating to PYTHON_EGG_CACHE?
[英]How do you determine the current Python egg cache directory?
我知道您可以使用环境变量PYTHON_EGG_CACHE覆盖Egg缓存目录,并且可以在os.envrion中查找该覆盖。 看起来Ubuntu 16上Python 2.7的默认值为/.cache/Python-Eggs 。
当环境中没有提供PYTHON_EGG_CACHE时,您将如何记录鸡蛋缓存的位置?
PYTHON_EGG_CACHE
使用PYTHON_EGG_CACHE
envvar确定存储已安装的鸡蛋包装的位置。 (您可以在此处阅读有关setuptools的更多信息)
浏览github上 setuptools的当前代码(在当前名为get_default_cache
的函数中)显示,如果envvar的查找失败,则使用以下方法计算默认值:
from pkg_resources.extern import appdirs
return (
os.environ.get('PYTHON_EGG_CACHE')
or appdirs.user_cache_dir(appname='Python-Eggs')
)
appdirs是一个非常简单的python库,可获取标准文件系统位置。 user_cache_dir
逻辑取决于您的操作系统,并且有很多条件(这里要解释的太多了,但是如果您感兴趣的话,请参见github上的逻辑 )
自从您提到U16-逻辑就是:
XDG_CACHE_HOME
),然后附加/Python-Eggs
(例如,如果XDG_CACHE_HOME
为/tmp/xdg/
则使用/tmp/xdg/Python-Eggs
) ~/.cache/Python-Eggs
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.