运行/安装 nuget 时出现未处理的异常

运行/安装 nuget 时出现未处理的异常

尝试在 Ubuntu 18.04.2 LTS 上安装 nuget。我遇到了错误,我不知道如何修复此状态。

nuget 无法启动,它给出以下未处理的异常错误System.Console

Unhandled Exception:
System.TypeInitializationException: The type initializer for 'System.Console' threw an exception. ---> System.TypeInitializationException: The type initializer for 'System.ConsoleDriver' threw an exception. ---> System.DllNotFoundException: System.Native
  at (wrapper managed-to-native) Interop+Sys.Stat(byte&,Interop/Sys/FileStatus&)
  at Interop+Sys.Stat (System.ReadOnlySpan`1[T] path, Interop+Sys+FileStatus& output) [0x00028] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath, System.Int32 fileType, Interop+ErrorInfo& errorInfo) [0x00007] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.FileSystem.DirectoryExists (System.ReadOnlySpan`1[T] fullPath, Interop+ErrorInfo& errorInfo) [0x00000] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.FileSystem.DirectoryExists (System.ReadOnlySpan`1[T] fullPath) [0x00000] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.Directory.Exists (System.String path) [0x0001e] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.TermInfoDriver.SearchTerminfo (System.String term) [0x00044] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.TermInfoDriver..ctor (System.String term) [0x0004b] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.ConsoleDriver.CreateTermInfoDriver (System.String term) [0x00000] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.ConsoleDriver..cctor () [0x0004d] in <81342d83acda4c5590ec19c7afdf26b9>:0
   --- End of inner exception stack trace ---
  at System.Console.SetupStreams (System.Text.Encoding inputEncoding, System.Text.Encoding outputEncoding) [0x00007] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.Console..cctor () [0x0007d] in <81342d83acda4c5590ec19c7afdf26b9>:0
   --- End of inner exception stack trace ---
  at NuGet.Program.Main (System.String[] args) [0x00005] in <dc8a236afba24badbb185682f8956bec>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'System.Console' threw an exception. ---> System.TypeInitializationException: The type initializer for 'System.ConsoleDriver' threw an exception. ---> System.DllNotFoundException: System.Native
  at (wrapper managed-to-native) Interop+Sys.Stat(byte&,Interop/Sys/FileStatus&)
  at Interop+Sys.Stat (System.ReadOnlySpan`1[T] path, Interop+Sys+FileStatus& output) [0x00028] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath, System.Int32 fileType, Interop+ErrorInfo& errorInfo) [0x00007] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.FileSystem.DirectoryExists (System.ReadOnlySpan`1[T] fullPath, Interop+ErrorInfo& errorInfo) [0x00000] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.FileSystem.DirectoryExists (System.ReadOnlySpan`1[T] fullPath) [0x00000] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.IO.Directory.Exists (System.String path) [0x0001e] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.TermInfoDriver.SearchTerminfo (System.String term) [0x00044] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.TermInfoDriver..ctor (System.String term) [0x0004b] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.ConsoleDriver.CreateTermInfoDriver (System.String term) [0x00000] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.ConsoleDriver..cctor () [0x0004d] in <81342d83acda4c5590ec19c7afdf26b9>:0
   --- End of inner exception stack trace ---
  at System.Console.SetupStreams (System.Text.Encoding inputEncoding, System.Text.Encoding outputEncoding) [0x00007] in <81342d83acda4c5590ec19c7afdf26b9>:0
  at System.Console..cctor () [0x0007d] in <81342d83acda4c5590ec19c7afdf26b9>:0
   --- End of inner exception stack trace ---
  at NuGet.Program.Main (System.String[] args) [0x00005] in <dc8a236afba24badbb185682f8956bec>:0

为了尝试修复它,我做了以下操作:

sudo apt --fix-broken install -y >log.txt 2>&1

这是 log.txt。抱歉,它太长了,但我不确定其中哪些部分是相关的。

警告:apt 没有稳定的 CLI 界面。在脚本中请谨慎使用。

正在读取包裹清单...
正在构建依赖关系树...
正在读取状态信息...
纠正依赖关系...完成
以下软件包已自动安装并且不再需要:
  apt-clone archdetect-deb busybox-static cryptsetup-bin dpkg-重新打包
  gir1.2-timezonemap-1.0 gir1.2-xkl-1.0 grub-common kde-window-manager kinit
  kio kpackagetool5 kwayland-data kwin-common kwin-data kwin-x11
  libdebian-installer4 libkdecorations2-5v5 libkdecorations2private5v5
  libkf5activities5 libkf5attica5 libkf5completion-data libkf5completion5
  libkf5声明性数据 libkf5declarative5 libkf5doctools5
  libkf5globalaccel-数据 libkf5globalaccel5 libkf5globalaccelprivate5
  libkf5idletime5 libkf5jobwidgets-数据 libkf5jobwidgets5 libkf5kcmutils-数据
  libkf5kcmutils5 libkf5kiocore5 libkf5kiontlm5 libkf5kiowidgets5
  libkf5newstuff-数据 libkf5newstuff5 libkf5newstuffcore5 libkf5package-数据
  libkf5package5 libkf5plasma5 libkf5quickaddons5 libkf5solid5
  libkf5solid5-数据 libkf5sonnet5-数据 libkf5sonnetcore5 libkf5sonnetui5
  libkf5textwidgets-数据 libkf5textwidgets5 libkf5waylandclient5
  libkf5waylandserver5 libkf5xmlgui-bin libkf5xmlgui-data libkf5xmlgui5
  libkscreenlocker5 libkwin4-effect-builtins1 libkwineffects11
  libkwinglutils11 libkwinxrenderutils11
  libmono-系统-运行时-互操作服务-运行时信息4.0-cil
  libnunit-cil-dev libnunit-console-runner2.6.3-cil
  libnunit-core-interfaces2.6.3-cil libnunit-core2.6.3-cil
  libnunit-framework2.6.3-cil libnunit-mocks2.6.3-cil libnunit-util2.6.3-cil
  libqgsttools-p1 libqt5designer5 libqt5help5 libqt5multimedia5
  libqt5multimedia5-插件 libqt5multimediaquick-p5 libqt5multimediawidgets5
  libqt5opengl5 libqt5positioning5 libqt5printsupport5 libqt5qml5 libqt5quick5
  libqt5quickwidgets5 libqt5sensors5 libqt5sql5 libqt5test5 libqt5webchannel5
  libqt5webkit5 libxcb-composite0 libxcb-cursor0 libxcb-damage0 os-prober
  python3-dbus.mainloop.pyqt5 python3-icu python3-pam python3-pyqt5
  python3-pyqt5.qtsvg python3-pyqt5.qtwebkit python3-sip
  qml-module-org-kde-kquickcontroladdons qml-module-qtmultimedia
  qml-模块-qtquick2 rdate
使用“sudo apt autoremove”来删除它们。
将会安装以下附加软件包:
  ca-证书-mono
以下软件包将会升级:
  ca-证书-mono
debconf:由于未安装 apt-utils,因此延迟软件包配置
升级了 1 个,新安装了 0 个,删除了 0 个,还有 278 个没有升级。
157 未完全安装或删除。
需要获取 0 B/31.2 kB 的档案。
此操作完成后,将释放4,096 B的磁盘空间。
设置 mono-gac (6.0.0.313-0xamarin3+ubuntu1804b1) ...
* 将 1 个程序集从 libnewtonsoft-json5.0-cil 安装到 Mono 中

未处理的异常:
System.DllNotFoundException:System.Native
  在(包装器管理到本机)Interop + Sys.Stat(字节&,Interop / Sys / FileStatus&)
  在 Interop+Sys.Stat (System.ReadOnlySpan`1[T] 路径,Interop+Sys+FileStatus& 输出) [0x00028] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath, System.Int32 fileType, Interop+ErrorInfo& errorInfo) [0x00007] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath) [0x00006] 中:0
  在 System.IO.File.Exists (System.String 路径) [0x00043] 中:0
  在 Mono.Tools.Driver.LoadConfig (System.Boolean quiet) [0x00028] 中:0
  在 Mono.Tools.Driver.Main (System.String[] args) [0x00351] 中:0
[错误] 致命的未处理异常:System.DllNotFoundException:System.Native
  在(包装器管理到本机)Interop + Sys.Stat(字节&,Interop / Sys / FileStatus&)
  在 Interop+Sys.Stat (System.ReadOnlySpan`1[T] 路径,Interop+Sys+FileStatus& 输出) [0x00028] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath, System.Int32 fileType, Interop+ErrorInfo& errorInfo) [0x00007] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath) [0x00006] 中:0
  在 System.IO.File.Exists (System.String 路径) [0x00043] 中:0
  在 Mono.Tools.Driver.LoadConfig (System.Boolean quiet) [0x00028] 中:0
  在 Mono.Tools.Driver.Main (System.String[] args) [0x00351] 中:0
E: 安装程序集 /usr/lib/cli/Newtonsoft.Json-5.0/Newtonsoft.Json.dll 失败
E: 使用 /usr/share/cli-common/runtimes.d/mono 安装 libnewtonsoft-json5.0-cil 失败
* 将 1 个程序集从 libnunit-console-runner2.6.3-cil 安装到 Mono 中

...删除了许多类似的例外情况...

未处理的异常:
System.DllNotFoundException:System.Native
  在(包装器管理到本机)Interop + Sys.Stat(字节&,Interop / Sys / FileStatus&)
  在 Interop+Sys.Stat (System.ReadOnlySpan`1[T] 路径,Interop+Sys+FileStatus& 输出) [0x00028] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath, System.Int32 fileType, Interop+ErrorInfo& errorInfo) [0x00007] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath) [0x00006] 中:0
  在 System.IO.File.Exists (System.String 路径) [0x00043] 中:0
  在 Mono.Tools.Driver.LoadConfig (System.Boolean quiet) [0x00028] 中:0
  在 Mono.Tools.Driver.Main (System.String[] args) [0x00351] 中:0
[错误] 致命的未处理异常:System.DllNotFoundException:System.Native
  在(包装器管理到本机)Interop + Sys.Stat(字节&,Interop / Sys / FileStatus&)
  在 Interop+Sys.Stat (System.ReadOnlySpan`1[T] 路径,Interop+Sys+FileStatus& 输出) [0x00028] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath, System.Int32 fileType, Interop+ErrorInfo& errorInfo) [0x00007] 中:0
  在 System.IO.FileSystem.FileExists (System.ReadOnlySpan`1[T] fullPath) [0x00006] 中:0
  在 System.IO.File.Exists (System.String 路径) [0x00043] 中:0
  在 Mono.Tools.Driver.LoadConfig (System.Boolean quiet) [0x00028] 中:0
  在 Mono.Tools.Driver.Main (System.String[] args) [0x00351] 中:0
E:安装程序集 /usr/share/cli-common/policies.d/libnewtonsoft-json5.0-cil/policy.5.0.Newtonsoft.Json.dll 失败
E:使用 /usr/share/cli-common/runtimes.d/mono 安装 policy.5.0.Newtonsoft.Json 失败
dpkg:处理软件包 mono-gac 时出错(--configure):
 已安装 mono-gac 包安装后脚本子进程返回错误退出状态 29
dpkg:依赖问题阻止 mono-runtime-common 的配置:
 mono-runtime-common 依赖于 mono-gac (= 6.0.0.313-0xamarin3+ubuntu1804b1);然而:
  软件包 mono-gac 尚未配置。

dpkg: 处理软件包 mono-runtime-common 时出错(--configure):
 依赖问题 - 未配置
没有写入批准报告,因为错误消息表明它是上次故障的后续错误。
处理时遇到错误:
 单乙醇胺
 mono-runtime-common
E: 子进程 /usr/bin/dpkg 返回错误代码 (1)

答案1

我在之前运行良好的脚本中也遇到了这个问题。这是由于 Mono 从 5.18.0.x 升级到最近发布的 6.0.0(2019 年 7 月 14 日)。

我能够使用 NuGet 4.7.0.5148(在 OSX 上)和 5.1.0.6013(在 Ubuntu 18.04 上)重现该错误。

在我的 Mac 上成功将 Mono 降级到 5.18.1 后,脚本又可以正常工作了。不过目前我仍停留在 Ubuntu 18.04 上,因为降级后的 Mono 现在遇到了 libc 异常。

相关内容