错误“virtualenv:找不到命令”但安装位置在 PYTHONPATH

Posted

技术标签:

【中文标题】错误“virtualenv:找不到命令”但安装位置在 PYTHONPATH【英文标题】:Error "virtualenv : command not found" but install location is in PYTHONPATH 【发布时间】:2017-02-19 06:00:46 【问题描述】:

在过去的 2 天里,这让我发疯了。 我使用pip install virtualenv 在我的 Macbook 上安装了 virtualenv。 但是当我尝试使用virtualenv venv 创建一个新的 virtualenv 时,我收到错误消息“virtualenv : command not found”。

我使用了pip show virtualenv,安装位置是“位置:/usr/local/lib/python2.7/site-packages”,但我不知道可执行文件在哪里。我尝试了几十个其他类似的帖子,但这些解决方案对我不起作用。

有什么想法可能会出错吗?

【问题讨论】:

你确定你的python路径是正确的吗?你是用系统安装的python,还是自己下载的? Pythonpath 不会影响从命令行执行程序... 你可以试试python -m venv吗? @cricket_007 :我过去 2 年一直在使用它,所以我不确定,但我认为它是默认安装。当我做which python 时,我得到“/usr/local/bin/python” 我通过自制软件安装了 python。当我做pip install virtualenv 时,它在那里创建了它。 【参考方案1】:

我能想到的唯一可行的方法(在@Gator_Python 的帮助下是做python -m virtualenv venv。这会创建虚拟环境并按预期工作。

我安装了自定义 python,也许这就是默认方法对我不起作用的原因。

【讨论】:

适用于 El Capitan 上的官方 Python3 下载。谢谢。 这也是我降落的大致位置。最终为我的.bashrc 添加了一个别名,这样我就可以节省一些打字时间。 同一答案的更详细版本:***.com/a/39977369/1357094 我做了 python3 -m virtualenv venv 所以 python3 而不是 python 因为我都安装了,可能对其他菜鸟有用...【参考方案2】:

在 macOS Mojave 上 首先检查python是否在路径中。python --version 第二次检查 pip 是否安装。pip --version 如果没有安装。brew install pip 第三次安装virtualenvsudo -H pip install virtualenv

【讨论】:

【参考方案3】:

正如 cmets 中所述,您已经在预期的环境中正确安装了 virtualenv 模块,因为 python -m venv 允许您创建 virtualenv。

virtualenv 不是一个可识别的命令的事实是 virtualenv.py 不在您的系统路径中和/或不可执行的结果。根本原因可能是过时的 distutils 或 setuptools。

您应该尝试定位 virtualenv.py 文件,确保它是可执行的 (chmod +x) 并且它的位置在您的系统 PATH 中。在我的系统上,virtualenv.py 位于 ../Pythonx.x/Scripts 文件夹中,但这对您来说可能有所不同。

【讨论】:

第一个解决方案对我有用,但第二个解决方案失败了,尽管在~/lib/python/site-packages 中找到了virtualenv,将此目录添加到PATH,并使virtualenv.py 可执行。我在 macOS Mojave 上使用 Python 3.6.7 和 pip3。 在 macOS Mojave 上你可以做 sudo -H pip install virtualenv【参考方案4】:

对于 Python 3

python3 -m virtualenv venv

【讨论】:

【参考方案5】:

可能是您正在使用 Anaconda 包管理器吗?如果是这样,那么它有它自己的虚拟环境系统,您设置如下:

conda create --name venv

【讨论】:

【参考方案6】:

我也遇到了同样的问题(尽管在 ubuntu 上),一个简单的解决方案是不要使用 pip install virtualenv,而是在推荐前加上“sudo”。

稍作检查即可揭示此修复背后的原因:

pip install virtualenv 尝试将可执行文件放在/usr/local/bin 下,以便可以从命令行调用它,但失败了,因为只有 root 对该目录有写权限

另一种选择是pip install --user virtualenv,这里有一些进一步的阅读1,2

【讨论】:

【参考方案7】:

在 Windows 上遇到了同样的问题。找不到命令,并且在 pip show 给出的目录中找不到可执行文件。 通过将“C:\UsersMy User\AppData\Roaming\Python\Python39\Scripts”添加到 PATH 环境变量来修复它。

【讨论】:

【参考方案8】:

我成功地在 /usr/local/bin 中手动创建了一个指向 location/virtualenv.py 的链接,将其命名为 virtualenv 并在文件上添加 +x 属性

➜  ~ pip show virtualenv
Name: virtualenv
Version: 16.6.0
Summary: Virtual Python Environment builder
Home-page: https://virtualenv.pypa.io/
Author: Ian Bicking
Author-email: ianb@colorstudy.com
License: MIT
Location: /home/prsadev/.local/lib/python2.7/site-packages
Requires: 


~ chmod +x /home/prsadev/.local/lib/python2.7/site-packages/virtualenv.py 
~ sudo ln -sf /home/prsadev/.local/lib/python2.7/site-packages/virtualenv.py /usr/local/bin/virtualenv

【讨论】:

【参考方案9】:

当我尝试运行我的“venv”时,我尝试在一个随机位置安装 virtualenv,并在 UBUNTU 机器上遇到了同样的问题。解决我的问题的是:-

$virtualenv -p python3 venv

另外,不要使用 $activate 尝试:- $source activate 如果您查看激活脚本(或 $cat activate),您会在评论中找到相同的内容。

【讨论】:

【参考方案10】:

从https://pypi.org/project/virtualenv安装virtualenv

python -m pip install --user virtualenv

sudo /usr/bin/easy_install virtualenv

【讨论】:

【参考方案11】:

这解决了我的类似问题!

您需要在how to create a virtual environement with python X.X.X 上在线查看(将 x.x.x 替换为您的 python 版本)

我的是 python 3.4.3 所以下面是我应该如何处理它:

sudo python3 -m venv aramisvenv

【讨论】:

以上是关于错误“virtualenv:找不到命令”但安装位置在 PYTHONPATH的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server不是有效的安装文件夹,如何修复位置

安装反应后显示错误:目标容器不是 DOM 元素

错误:位置参数太多:允许 0 个,但找到 2 个

jdk安装总是失败,这是怎么回事

didUpdateLocations 被调用,但发送错误的位置

CAD2007安装错误1606无法访问网络位置Autodesk....