Visual Studio for Mac のインストーラーで、インストール中にエラーが発生した時の対処方法(System.Net.WebException)
年始早々バスケして肉離れしました。(挨拶)
Visual Studio for Macを新規インストール中にエラーが発生しまして、苦戦した結果をここに書き記そうかと。
※私のMacBookの環境で発生および解決した方法なので、もし試す場合は自己責任でお願いします。
何が起こったのか
Visual Studio for Macのインストール中にエラーが発生し、何もインストールされないという現象が発生。
環境
・Installer version::4.0.2.121
・OS:Mac OS X v10.12.6(Sierra)
※High Sierraでもたぶん同じ事象が発生していたと思う。
エラーメッセージ
インストーラーで表示される主なエラーメッセージは以下のとおり。
Error downloading from Mono server. Mono Framework. Message: The operation has timed out. Exception type: System.Net.WebException 複数の例外により、Mono Framework をインストールできませんでした (試行回数 3) Message: Some installation errors are present. Exception type: System.AggregateException
実際の画面は以下の感じ。
エラー原因
このエラーメッセージからは正直わからないことが多いため、インストールログを確認したところ、インストールに必要なMono FrameworkのPackageファイルのダウンロードに失敗しているようでした。
インストールログは以下のパスに保存されており、より詳細なログが出力されています。
/Users/(UserName)/Library/Logs/XamarinInstaller/Universal
[2018-01-06 05:32:52.857] [Info] Installing software item 'Mono Framework' [2018-01-06 05:32:52.857] [Info] Mono Framework is waiting for download to finish. [2018-01-06 05:32:54.597] [Debug] Download size for 'https://dl.xamarin.com/MonoFrameworkMDK/Macx86/MonoFramework-MDK-5.4.1.7.macos10.xamarin.universal.pkg': 493676379 [2018-01-06 05:32:55.518] [Debug] Download size for 'https://dl.xamarin.com/VsMac/VisualStudioForMac-7.3.2.12.dmg': 426875576 [2018-01-06 05:32:56.236] [Debug] Download size for 'https://dl.xamarin.com/profiler/profiler-mac-1.6.0-25.pkg': 44832659 [2018-01-06 05:32:56.236] [Info] Downloading from 'https://dl.xamarin.com/MonoFrameworkMDK/Macx86/MonoFramework-MDK-5.4.1.7.macos10.xamarin.universal.pkg'. [2018-01-06 05:32:56.237] [Debug] Setting download timeout for 'https://dl.xamarin.com/MonoFrameworkMDK/Macx86/MonoFramework-MDK-5.4.1.7.macos10.xamarin.universal.pkg' to 60s [2018-01-06 06:09:44.133] [Exception] Failed to retrieve response for URL 'https://dl.xamarin.com/MonoFrameworkMDK/Macx86/MonoFramework-MDK-5.4.1.7.macos10.xamarin.universal.pkg' [2018-01-06 06:09:44.133] [Exception] System.Net.WebException: The operation has timed out. [2018-01-06 06:09:44.133] [Exception] at System.Net.WebConnectionStream.Read (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x00055] in /Library/Frameworks/Xamarin.Mac.framework/Versions/2.10.0.113/src/mono/mcs/class/System/System.Net/WebConnectionStream.cs:338 [2018-01-06 06:09:44.133] [Exception] at Xamarin.Web.Installer.DownloadService.DoDownload (System.Int64 totalBytes, System.IO.Stream responseStream, System.IO.Stream outputStream, System.Object state) [0x00087] in /Users/builder/data/lanes/5758/b4a89cf8/source/installer/Xamarin.Web.Installer/DownloadService.cs:285
対処方法
上記エラーメッセージの.pkgファイルを手動でインストールします。
.pkgのURLをコピーし、ブラウザのアドレスバーなどへ貼り付けて実行することでPackageのダウンロードが開始されるため、ダウンロード後にインストールします。
私の場合、Monoのインストールが正常に完了し、再度インストーラーでインストールを進めてみたところ、今度は「VisualStudioForMac-7.3.2.12.dmg」のダウンロードでエラーが発生。
→同じように手動でインストール
→インストール完了
→インストーラーで再度インストールするもまたエラー
→エラーログからxamarin.android-8.1.0-25.pkgを手動でインストール
→インストール完了
→インストーラーで再度インストールするもまたエラー
→エラーログからxamarin.ios-11.6.1.2.pkgを手動でインストール
→インストール完了
と、何度も繰り返し。再度にインストーラーも正常終了したことを確認し、無事インストールが完了。
その後は特に問題なく利用できています。
結局のところ、System.Net/WebConnectionStream.csでエラーが発生していたようですが、なぜエラーが発生していたかまでは不明です。
同じような事象で困っている人の助けになれば幸いです。