安装包:检测到包“Microsoft.Data.Sqlite”的依赖循环

Ren*_*ger 8 powershell packaging nuget-package

我正在尝试Microsoft.Data.Sqlite使用 PowerShell 的 cmdLet进行安装install-package

$pkg = find-package -name Microsoft.Data.Sqlite
install-package -force -scope currentUser -verbose $pkg
Run Code Online (Sandbox Code Playgroud)

第二个命令需要很长时间,然后响应

install-package : Dependency loop detected for package 'Microsoft.Data.Sqlite'.
At line:1 char:1
+ install-package -force -scope currentUser -verbose $pkg
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : Deadlock detected: (Microsoft.Data.Sqlite:String) [Install-Package], Exception
+ FullyQualifiedErrorId : DependencyLoopDetected,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackage
Run Code Online (Sandbox Code Playgroud)

为什么会这样,我必须做什么才能安装此软件包?

JPB*_*anc 7

首先,我安装最新的 Nuget 提供程序,在提升的 PowerShell 提示符下运行以下命令:

Install-PackageProvider Nuget –force –verbose
Run Code Online (Sandbox Code Playgroud)

我解决了另一个包的问题,​​我使用-SkipDependencies附加参数遇到了同样的问题:

Install-Package libphonenumber-csharp -Destination ".\NugetPackages" -Force -Source 'https://www.nuget.org/api/v2' -ProviderName NuGet -RequiredVersion '8.10.23' -SkipDependencies -ErrorAction SilentlyContinue
Run Code Online (Sandbox Code Playgroud)

然后 install-package 再次为这个包工作,我显然不明白为什么它突然停止工作,但-SkipDependencies对我来说是依赖循环的答案。