Solving environment: failed InvalidVersionSpecError: Invalid version spec: =2.7
时间: 2023-10-22 20:31:02 浏览: 314
Anaconda conda 不能用,一直Solving enviroment 最后报错CondaHTTPError: HTTP 000 CONNECTION FAILED for url
当出现"Solving environment: failed"和"InvalidVersionSpecError: Invalid version spec: =2.7"的错误时,这通常意味着conda在解析环境文件时遇到了无效的版本规范。解决此问题的方法是更改conda的版本规范解析代码。
首先,您可以尝试删除`.condarc`文件中带有conda-forge的行,并运行以下命令:`conda config --remove channels conda-forge`。然后,尝试运行以下命令来更新conda和python版本:`conda install --channel defaults conda python=3.6 --yes`和`conda update --all`。这些步骤可能会解决问题。
如果以上方法仍然无法解决问题,您可以尝试修改conda的源代码。您可以在conda的base环境中找到`site-packages/conda/models/version.py`文件,并对其进行备份。然后,将文件的第396行从`version_relation_re = re.compile(r'(==|!=|<=|>=|<|>)(?![=<>!])(\S+)$')`修改为`version_relation_re = re.compile(r'(==|!=|<=|>=|<|>|=)(?![=<>!])(\S+)$')`。接下来,将文件的第398行从`opdict = {'==': op.__eq__, '!=': op.__ne__, '<=': op.__le__, '=': lambda x, y: x.startswith(y),`修改为`opdict = {'==': op.__eq__, '!=': op.__ne__, '<=': op.__le__,`。然后,尝试创建新的环境,应该可以成功了。
如果问题仍然存在,还可以尝试运行`conda update conda`命令来更新conda本身。这可能有助于解决"Solving environment: failed"的问题。
请注意,对conda源代码的修改可能会导致其他问题,因此在对源代码进行修改之前,请确保备份所有重要数据并谨慎操作。
阅读全文