> 技术文档 > uv与conda环境冲突,无法使用uv环境,安装包之后出现ModuleNotFoundError: No module named ‘xxx‘等解决方法

uv与conda环境冲突,无法使用uv环境,安装包之后出现ModuleNotFoundError: No module named ‘xxx‘等解决方法


问题发现

在使用uv创建环境之后,发现pip list的列表依然是base环境里的,uv创建的环境无法识别
创建环境之后,发现依然有base样式,说明依然在conda环境中
首先退出conda环境conda deactivate
退出之后,进入环境.\\.venv\\Scripts\\activate ,再用pip list发现依然是base目录的pip包

检查位置

这个时候首先检查python和pip的位置分别在哪里
Get-Command python
Get-Command pip

CommandType Name Version Source----------- ---- ------- ------Application python.exe 3.12.3.0 D:\\Computer\\.venv\\Scripts\\python.exeApplication pip.exe 24.0.0.0 D:\\Computer\\Anaconda\\Anaconda\\Scripts\\pip.exe

发现source两个的指向不相同

然后因为我的python在正确的环境中了,当我调用python -m pip list的时候,却显示不存在pip
我查看目录发现却是不存在,难道是uv的问题吗?

查看uv

发现uv包的lib文件夹不存在pip包,也就是不知道什么原因,pip不见了
这个时候怀疑uv和conda冲突问题,但是选择另外一种方式

转变方向

我们使用python创建veuv

python -m venv .venv

再使用
pyhthon -m pip list

(.venv) PS D:\\Computer\\脚本\\CSDN> pip listPackage Version------- -------pip 24.0[notice] A new release of pip is available: 24.0 -> 25.2[notice] To update, run: python.exe -m pip install --upgrade pip

可以显示,说明是uv和conda冲突,python本身没有问题
所以再创建环境之前,需要首先解除conda环境的影响,而不是再conda中使用uv

问题解析

这通常是由于 Anaconda 在安装时,将其路径(如 D:\\Computer\\Anaconda\\Anaconda\\Scripts)添加到了你 Windows 系统的全局 PATH 环境变量中。
当你运行.\\.venv\\Scripts\\activate时,这个激活脚本会尝试把你虚拟环境的 Scripts 目录临时添加到当前终端会话的 PATH 变量的最前面。理论上,此时当你输入 pip,系统应该会首先在 .venv\\Scripts 里找到它。
但从结果来看,Anaconda 的路径优先级更高,或者因为某些 PowerShell 的配置,导致系统仍然找到了 Anaconda 的 pip。

PHP学习教程