VS2017 - 尝试将 nuget 包保存到 Xamarin 文件夹中 - 为什么?
VS2017 - attempts to save nuget packages into a Xamarin folder - why?
我对这个感到困惑。
我安装了 VS2017(v15.9.16,2019 年 10 月中旬更新到最新版本),但由于某些原因,当我尝试将 NuGet 包添加到我的 Web 项目时,它想将它们保存到一个Xamarin 文件夹:
Warning MSB3106
Assembly strong name "C:\Microsoft\Xamarin\NuGet\swashbuckle.aspnetcore.0.1\lib\netstandard2.0\Swashbuckle.AspNetCore.dll"
is either a path which could not be found or it is a full assembly name which is badly formed.
If it is a full assembly name it may contain characters that need to be escaped with backslash(\).
Those characters are Equals(=), Comma(,), Quote("), Apostrophe('), Backslash(\).
我在 "Error List" window 中收到此警告消息 10 次。
我的VS2017项目是一个.Net Core 2.2 Web API解决方案,我对Xamarin没有兴趣,也从来没有在这台笔记本电脑上做过任何Xamarin开发。不知道为什么VS2017决定开始使用这个奇怪的路径
这个输出路径到底设置在哪里?
Where the heck is this output path set ?
你的机器里还有VS2019吗?我发现如果有人在 VS 中开发 Xamarin,则可能会出现此问题。在我刚才安装 Xamarin 工作负载之前,我从来没有路径 C:\Microsoft\Xamarin\NuGet\
:
我猜来自此工作负载的某些东西可能会破坏您的 nuget 行为,这会导致您的错误消息中出现错误的路径。
建议:
1.Uninstall 因为您对 Xamarin.
不感兴趣,所以工作量很大
2.The 错误路径的直接原因是 Xamarin 工作负载在 C:\Program Files (x86)\NuGet\Config\
中放置了一个 Xamarin.Offline.config
文件,它设置了 C:\Microsoft\Xamarin\NuGet\
作为一个 fallbackPackageFolders
。
然后有时你会得到路径错误的错误消息,通常这种错误消息中的路径应该是C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
或C:\Program Files\dotnet\sdk\NuGetFallbackFolder\
。
所以解决错误路径的另一种简单方法是删除路径C:\Program Files (x86)\NuGet\Config
中的Xamarin.Offline.config
,该文件可能是错误路径的直接原因。 (为了回答你原来的问题,这个文件为你设置了那个奇怪的路径...)
删除该文件后,clean your nuget cache 并删除您的 obj
(存在 project.assets.json
的文件夹),我认为错误的路径永远不会困扰您。
而对于 MSB3106,您可能会从中得到一些帮助 。希望对您有所帮助:)
此外:检查你在VS中的package source设置,如果存在C:\Microsoft\Xamarin\NuGet\
,删除它。
我对这个感到困惑。
我安装了 VS2017(v15.9.16,2019 年 10 月中旬更新到最新版本),但由于某些原因,当我尝试将 NuGet 包添加到我的 Web 项目时,它想将它们保存到一个Xamarin 文件夹:
Warning MSB3106
Assembly strong name "C:\Microsoft\Xamarin\NuGet\swashbuckle.aspnetcore.0.1\lib\netstandard2.0\Swashbuckle.AspNetCore.dll"
is either a path which could not be found or it is a full assembly name which is badly formed.
If it is a full assembly name it may contain characters that need to be escaped with backslash(\).
Those characters are Equals(=), Comma(,), Quote("), Apostrophe('), Backslash(\).
我在 "Error List" window 中收到此警告消息 10 次。
我的VS2017项目是一个.Net Core 2.2 Web API解决方案,我对Xamarin没有兴趣,也从来没有在这台笔记本电脑上做过任何Xamarin开发。不知道为什么VS2017决定开始使用这个奇怪的路径
这个输出路径到底设置在哪里?
Where the heck is this output path set ?
你的机器里还有VS2019吗?我发现如果有人在 VS 中开发 Xamarin,则可能会出现此问题。在我刚才安装 Xamarin 工作负载之前,我从来没有路径 C:\Microsoft\Xamarin\NuGet\
:
我猜来自此工作负载的某些东西可能会破坏您的 nuget 行为,这会导致您的错误消息中出现错误的路径。
建议:
1.Uninstall 因为您对 Xamarin.
不感兴趣,所以工作量很大2.The 错误路径的直接原因是 Xamarin 工作负载在 C:\Program Files (x86)\NuGet\Config\
中放置了一个 Xamarin.Offline.config
文件,它设置了 C:\Microsoft\Xamarin\NuGet\
作为一个 fallbackPackageFolders
。
然后有时你会得到路径错误的错误消息,通常这种错误消息中的路径应该是C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
或C:\Program Files\dotnet\sdk\NuGetFallbackFolder\
。
所以解决错误路径的另一种简单方法是删除路径C:\Program Files (x86)\NuGet\Config
中的Xamarin.Offline.config
,该文件可能是错误路径的直接原因。 (为了回答你原来的问题,这个文件为你设置了那个奇怪的路径...)
删除该文件后,clean your nuget cache 并删除您的 obj
(存在 project.assets.json
的文件夹),我认为错误的路径永远不会困扰您。
而对于 MSB3106,您可能会从中得到一些帮助
此外:检查你在VS中的package source设置,如果存在C:\Microsoft\Xamarin\NuGet\
,删除它。