小能豆

未找到 Virtualenv 命令

javascript

尽管尝试了各种方法,我还是无法virtualenv工作。我virtualenv在 MAC OS X 上使用以下方法安装:

pip install virtualenv

并且还添加了PATH到我的.bash_profile。每次我尝试运行该virtualenv命令时,它都会返回:

-bash: virtualenv: command not found

每次运行pip install virtualenv它都会返回:

Requirement already satisfied (use --upgrade to upgrade): virtualenv in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

我理解在 Mac 中,virtualenv应该正确安装在

/usr/local/bin

virtualenv确实安装在了 中,/usr/local/bin但每当我尝试运行该virtualenv命令时,都找不到该命令。我也尝试virtualenv在目录中运行该命令/usr/local/bin,它给出了相同的结果:

-bash: virtualenv: command not found

这些是我添加到 .bash_profile 中的 PATH

export PATH=$PATH:/usr/local/bin
export PATH=$PATH:/usr/local/bin/python
export PATH=$PATH:/Library/Framework/Python.framework/Version/2.7/lib/site-packages

有什么解决方法吗?为什么会这样?


阅读 50

收藏
2024-09-23

共1个答案

小能豆

您的安装似乎位于正确的位置,但由于您的设置virtualenv方式,您的 shell 无法识别它。让我们逐步了解几个步骤,以确保在 macOS 上正确配置了所有内容。PATH

1.验证virtualenv安装路径

首先,确保它virtualenv安装在您期望的位置。您可以使用以下命令找到安装的确切路径virtualenv

which virtualenv

如果它不返回任何内容或virtualenv: command not found,则二进制文件可能不在您的中PATH,或者它可能安装在不同的 Python 版本中。

2. 确保/usr/local/bin在你的PATH

您的以下行.bash_profile应正确添加/usr/local/bin到您的PATH

export PATH=$PATH:/usr/local/bin

确保此行在您的 中.bash_profile。更新 后.bash_profile,通过运行重新加载它:

source ~/.bash_profile

现在,尝试运行:

echo $PATH

这应该显示/usr/local/bin为 的一部分PATH。如果/usr/local/bin缺失,则表示PATH未正确设置。

3.检查Python是否安装正确

您可能安装了多个版本的 Python,并且virtualenv可能只安装了其中一个版本,而不安装其他版本。运行以下命令检查正在使用哪个 Python 版本:

which python

检查它是否指向正确的 Python 版本(/usr/local/bin/python/Library/Frameworks/Python.framework/Versions/2.7/bin/python就你的情况而言)。

4. 重新安装virtualenv当前 Python 版本

有时,即使virtualenv安装了,也可能没有链接到正确的 Python 二进制文件。您可以尝试virtualenv直接为当前的 Python 版本安装或重新安装:

python -m pip install --upgrade virtualenv

这将安装virtualenv您当前使用的 Python 版本。现在,尝试检查是否virtualenv可以识别:

which virtualenv

5.python -m venv作为替代方案

venv由于您使用的是 Python 2.7,如果您还安装了 Python 3.x ,则另一个选择是使用内置模块。Python 3.3+ 包含venv用于创建虚拟环境的功能,使用起来通常更简单:

python3 -m venv myenv

6. 最终选项:创建符号链接(如果需要)

如果上述步骤不起作用并且virtualenv确实安装了但无法识别,您可以手动创建符号链接:

ln -s /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenv /usr/local/bin/virtualenv

这会在 中创建一个符号链接/usr/local/bin,确保系统virtualenv在您键入命令时可以找到。


按照这些步骤操作后,您应该能够正常运行virtualenv而不会遇到command not found错误。如果此方法有效或者您需要进一步说明,请告诉我!

2024-09-23