[英]What would cause “Value cannot be null, Uristring” in a vsix installation?
在最新版本的 Visual Studio 16.6.2051 中,無法再安裝我的 Visual Studio package。
我得到錯誤
Value cannot be null.
Parameter name: uriString
該安裝在以前版本的 Visual Studio 中運行(可能在最新版本中)。 我確信 Visual Studio 中發生了一些變化。
但是,這並不意味着我的安裝不包含錯誤。
這是日志文件的最后一部分(我認為這是最有趣的)
30-Jun-20 20:19:33 - BEGIN: Downloading extension:
30-Jun-20 20:19:33 - END: Downloading extension:
30-Jun-20 20:19:33 - Value cannot be null.
Parameter name: uriString
30-Jun-20 20:19:33 - at System.Uri..ctor(String uriString)
at VSIXInstaller.ExtensionPackService.DownloadExtension(IFileSystem fileSystem, BaseOnlineExtension extensionToDownload, CancellationToken cancellationToken)
at VSIXInstaller.ExtensionPackService.GetExtensionByVsixId(List`1 vsixIds, String extensionPackParentName, IExtensionEngine extensionEngine, List`1 extensionsToInstall, CancellationToken cancellationToken)
30-Jun-20 20:19:33 - END: Gathering extension pack information
30-Jun-20 20:19:33 - END: Processing extension pack
30-Jun-20 20:19:33 - System.ArgumentNullException: Value cannot be null.
Parameter name: uriString
at System.Uri..ctor(String uriString)
at VSIXInstaller.ExtensionPackService.DownloadExtension(IFileSystem fileSystem, BaseOnlineExtension extensionToDownload, CancellationToken cancellationToken)
at VSIXInstaller.ExtensionPackService.GetExtensionByVsixId(List`1 vsixIds, String extensionPackParentName, IExtensionEngine extensionEngine, List`1 extensionsToInstall, CancellationToken cancellationToken)
at VSIXInstaller.ExtensionPackService.AcquireExtensionPack(IList`1 extensionsPath, IStateData stateData, Boolean isRepairSupported)
at VSIXInstaller.ExtensionPackService.ExpandExtensionPackToInstall(IStateData stateData, Boolean isRepairSupported)
at VSIXInstaller.App.Initialize(Boolean isRepairSupported)
at VSIXInstaller.App.Initialize()
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.VisualStudio.Telemetry.WindowsErrorReporting.WatsonReport.GetClrWatsonExceptionInfo(Exception exceptionObject)
我已在給 Microsoft 的錯誤報告中包含完整的日志
有誰知道錯誤可能指的是什么 uriString 以及我如何解決它?
事實證明,我的項目包含一個不必要的文件Extensions.vsext ,內容如下:
{
"description": "Read about creating extension packs at https://aka.ms/vsextpack",
"version": "1.0.0.0",
"extensions": [
{
"vsixId": "41858b2d-ff0b-4a43-80b0-f1b2d6084935",
"name": "AlignAssignments"
},
{
"vsixId": "42374550-426a-400e-96f9-237682e8dea6",
"name": "CopyAsHtml"
}
]
}
當我創建原始 package 時,它必須是從項目模板中創建的。
很可能,我在創建項目時選擇了錯誤的項目類型。 這個文件只需要創建一個所謂的擴展包。
我已經從項目中刪除了這個文件,它已經解決了這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.