WSL2环境下dotnet tool运行报错找不到已存在的兼容.NET框架版本
问题根因
该问题由DOTNET_ROOT环境变量缺失导致:
- 即使你将家目录下的
~/.dotnet路径加入了PATH,能正常调用dotnet命令输出5.0版本,但dotnet工具运行时默认会优先读取系统全局路径下的运行时配置,你没有显式指定DOTNET_ROOT指向家目录的dotnet安装路径,所以运行gitversion工具时,程序依旧去/usr/share/dotnet/路径下查找需要的.NET 5.0运行时,只找到3.1版本就抛出了兼容报错。
解决方法
编辑你当前使用的shell对应的配置文件(使用bash则编辑~/.bashrc,使用zsh则编辑~/.zshrc),添加以下两行配置:
# 指定dotnet根目录为家目录下的安装路径 export DOTNET_ROOT="$HOME/.dotnet" # 将dotnet可执行文件和全局工具路径加入PATH export PATH="$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools"
保存后执行source ~/.bashrc(对应你编辑的配置文件名)使配置即时生效。如果需要临时验证效果,可以直接在当前终端执行export DOTNET_ROOT=~/.dotnet后再运行dotnet-gitversion测试是否正常。
内容的提问来源于stack exchange,提问作者Mario Toffia
相关产品推荐
相关产品推荐

