环境:
MacOS (M2/ARM) -> Parallels Desktop -> Windows 11 ARM
没有装任何Visual Studio
直接装的TeamCity的BuildAgent
dotnet-sdk-6.0.401-win-x64.exe以及dotnet-sdk-6.0.302-win-x64.exe
JetBrains Rider 2022.2 & .net 6 构建的 console项目
使用
dotnet --list-sdks
只显示一个5.0.408的sdk(之前装的,在系统刚初始化时候好像list不出来别的sdk)
我明明安装了6.0.401和6.0.302两个sdk,但是都没列出来.然后看
C:\Program Files\dotnet\sdk目录下,只有5.0.408,跟在cmd中执行命令列出来的情况一样.
这个问题我在Win7上也出现过,Win7的电脑也是装了Visual Studio之后不能buid项目,同样的提示内容:
C:\Program Files\dotnet\sdk\5.0.408\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets(141,5): error NETSDK1045: 当前 .NET SDK 不支持将 .NET 6.0 设置为目标。请将 .NET 5.0 或更低版本设置为目标,或使用支持 .NET 6.0 的 .NET SDK 版本。
生成失败。
也就是说,.net6.0的sdk没安装上,或者是安装上了不起作用
退出所有的正在运行的需要依赖.net的程序
把
C:\Program Files\dotnet\x64
下的所有文件 剪切
粘贴到
C:\Program Files\dotnet
完毕后无需重启 直接在cmd执行
dotnet --list-sdks
就可以看到列出的sdk了
PD可能会有一些文件夹路径导致的问题.比如在mac系统下的微信聊天记录中的文件,你点右键然后在finder中显示之后,那个文件夹中的文件,不可以直接通过pd复制过去,windows认不到这个文件夹.至少win11 认不到.
我开始是将.net安装包通过在Finder中,右键,在Windows中打开文件的方式安装的,以为该安装包会检测自己的所在路径进行解压之类的导致的错误,然而不是的.这个安装包是解压到了Win系统的Temp目录中然后运行.
管理员运行权限的问题,试了一下也不是的.
302版本有问题401版试试? 也不是的 只是路径问题.
Win11 ARM版的问题? 可能是,也许Win11 Intel的不会有这个问题吧
1.我总提醒别人要仔细看软件安装说明,但我忽略了,检讨.如果早点看,在安装完以后的成功窗口其实有提示他把文件安装在了x64中
2.可能只移动dotnet.exe能解决这个问题,或者是指移动C:\Program Files\dotnet\x64\sdk文件夹中的6.0.xxx到 C:\Program Files\dotnet\sdk中即可解决这个问题,但是我没有测试.下次再遇到这个问题可以试一下.
3.我下次有机会应该回到Win7系统+vs2019(或是2022?不记得了)的那个电脑上试一下是不是也是这个问题导致不能build
4.微软自己的SDK为什么自己的操作系统不认识???