Visual Studio 2022(ARM64 版)で Bicep 拡張機能(vs-bicep.vsix)を導入しようとすると VSIXInstaller.NoApplicableSKUsException が出て進めない——。本記事は、その原因を “アーキテクチャ非対応” の観点から分解し、ARM64 を維持する場合/x64 を使う場合の現実的な選択肢、運用ワークフローまでを一気通貫で整理します(情報は 2025 年 11 月時点)。
Visual Studio 2022 で Bicep 拡張機能をインストールできない(NoApplicableSKUsException)
質問概要(再掲)
- 環境: Visual Studio Enterprise 2022(ARM64 版) v17.14.8
- 事象: Bicep 拡張(
vs-bicep.vsix)を VSIX Installer で導入すると、VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products.が発生しインストールできない。
結論(先に要点)
- 原因は「ARM64 版 Visual Studio に該当する SKU がない」こと。Bicep の Visual Studio 拡張は、対応する Visual Studio の バージョンは 17.10 以上が必要ですが、ARM64 版の Visual Studio 向けにビルドされていないため、ARM64 環境では「該当 SKU なし」(NoApplicableSKUs)で弾かれます。
- ARM64 デバイスに x64 版 Visual Studio を直接入れることは基本できません。Visual Studio 2022 のインストーラは 実行環境のアーキテクチャを自動判別して ARM64 版を入れる仕様で、x64 と ARM64 のサイドバイサイド共存も不可です。
- したがって ARM64 を維持するなら、VS Code の Bicep 拡張や Bicep CLI を用いたワークフローに切り替えるのが現実解です。
なぜ「NoApplicableSKUsException」が出るのか
VSIX は extension.vsixmanifest に「どの Visual Studio(エディション/バージョン/アーキテクチャ)に入れられるか」を宣言します。これに一致しない環境に入れようとすると、VSIX Installer は NoApplicableSKUsException を投げます。該当しない要因は大きく ①バージョン非対応、②エディション非対応、③アーキテクチャ非対応(ARM64 未対応) の3つです。
- バージョン:Bicep 拡張は Visual Studio 17.10 以上が必須です。17.9 以下に対しては旧版(0.28.x)がありますが、ARM64 の可否とは別問題です。
- アーキテクチャ:ARM64 版 Visual Studio に対応するには、拡張作者が ARM64 用のターゲットを明示しビルドする必要があります。ARM64 対応は VS 2022(17.4 以降)で拡張にも開放されましたが、すべての拡張が対応済みではありません。
ARM64 版 Visual Studio では x64 版へ切替インストールできるのか
結論から言うと、ARM64 デバイス上で x64 版 Visual Studio を直接インストールすることはできません。インストーラは単一で、実行時にアーキテクチャを判定し ARM64 デバイスでは ARM64 版を導入します。また、x64 と ARM64 の同居(SxS)も不可です。
開発者コミュニティの議論でも「ARM 上では x64 版の VS 2022 はサポート外で、起動しても ARM64 版が入る」と整理されています。“x64 エミュレーションで VS 本体を動かす” という回避は基本的に取れません。
対処方針の全体像
以上を踏まえると、方針は次の 3 択です。
| 選択肢 | 適用シーン | メリット | デメリット |
|---|---|---|---|
| A. ARM64 を維持し、VS Code + Bicep 拡張に切替 | ローカルは ARM64 デバイスのまま。Bicep の記述・検証を快適に行いたい | ネイティブ ARM64 で軽快。言語サービス・補完・スキーマ検証が充実 | Visual Studio 固有の機能(ソリューション統合など)は使えない |
| B. Bicep CLI 中心の CLI/CI ワークフローへ移行 | エディタは問わず、CI/CD で .bicep をビルド・デプロイしたい | 環境依存が小さい。自動化に強い | IDE 連携の補完・リファクタリングは限定的 |
| C. x64 版 Visual Studio が必要なら VM/リモートを利用 | 既存ソリューションで VS 拡張(Bicep 含む)を VS の中で使いたい | 既存の VS エコシステムをそのまま使える | VM 構築/リモート環境のコスト・運用が増える |
各対処の詳細
A. ARM64 を維持して VS Code の Bicep 拡張を使う
Microsoft 純正の 「Bicep for VS Code」は ARM64 環境で安定して動作し、言語サービス・補完・スニペット・診断・.bicepparam 対応などを提供します。ARM64 デバイスでのローカル開発はこれが最も手堅い選択です。
すぐ使える最小手順
- VS Code(ARM64 版)を導入。
- 拡張機能から「Bicep」を検索・インストール。
- 必要に応じて Azure CLI を導入し、Bicep CLI も併せて入れる(次項)。
B. Bicep CLI を導入してビルド/デプロイを自動化
Bicep CLI は Azure CLI からワンコマンドで導入できます。CI から bicep build で ARM テンプレートへ変換し、az deployment で本番に載せる運用が王道です。
導入コマンド例(Windows / PowerShell)
# Azure CLI の導入は省略。インストール済みとして…
az bicep install
az bicep version
# Bicep → ARM(JSON) へビルド
bicep build .\main.bicep --outfile .\main.json
# サブスクリプションレベルにデプロイ(例:リージョン Japan East)
az deployment sub create ^
--location japaneast ^
--template-file .\main.bicep ^
--parameters env=prod
VS Code 連携の Tips
- スキーマ・型はオンラインで最新を引くため、企業プロキシ配下は
HTTP_PROXY等の設定で安定します。 .bicepparamファイルを併用し、環境差分はパラメータに寄せると CI のパイプラインが簡潔になります。
C. どうしても Visual Studio 内で Bicep 拡張を使いたい場合
前述のとおり ARM64 デバイスに x64 版の Visual Studio を直接インストールすることはできません。必要であれば、x64 の仮想マシン(Hyper‑V / VMware / Azure VM 等)で VS 2022(x64)を用意し、その上で Bicep 拡張を導入してください。Microsoft Q&A でも ARM64 デバイスでは VM の利用が案内されています。
「Bicep は ARM64 に非対応」になってしまう背景
Visual Studio の拡張は、UI やネイティブ依存を含むことが多く、ARM64 対応には拡張側での再ビルド(arm64 ターゲット追加)と検証が必要です。Microsoft は VS 2022(17.4 以降)で 拡張の ARM64 対応を正式にサポートしましたが、各拡張が対応を完了しているとは限りません。Bicep を含め「ARM64 は未対応」というケースは珍しくありません。
バージョン条件の確認ポイント
Bicep の Visual Studio 拡張は Visual Studio 17.10 以上が前提です。お使いの 17.14.8 はこの条件を満たします(ゆえに今回の失敗原因は「ARM64 未対応」の可能性が高い)。旧版 VS(17.9 以下)しか使えない事情がある場合は、拡張の旧バージョン(0.28.x 系)が案内されていますが、ARM64 の可否は別なので注意してください。
インストールログでの切り分け(速習)
VSIX Installer は %TEMP% に詳細ログ(VSIXInstaller_*.log)を出力します。以下の観点を見ると原因特定が容易です。
- Applicable SKUs:一致した SKU が 0 件なら、manifest の対象外(バージョン/エディション/アーキテクチャ)。
- Prerequisites:InstallationTarget Architecture が
amd64のみ等、ARM64 を含まない記述なら ARM64 版 VS には適用されません。
チェックリスト(最短で詰まらないために)
| 項目 | 確認方法 | 基準 |
|---|---|---|
| Visual Studio のバージョン | VS の「ヘルプ > バージョン情報」 | 17.10 以上(Bicep 拡張の要件) |
| Visual Studio のアーキテクチャ | 同画面に “ARM64” 表記があれば ARM 版 | ARM64 版では Bicep 拡張は未対応(本稿の事象) |
| x64 版 VS の導入可否 | インストーラの挙動 | ARM64 デバイスでは ARM64 版が自動選択/SxS 不可 |
| 代替編集環境 | VS Code の拡張 | ARM64 で安定動作。言語サービス充実 |
| ビルド/デプロイ | Azure CLI + Bicep CLI | az bicep install で即利用可 |
PowerShell で環境を素早く診断する
「自分の VS が ARM64 か分からない」「OS が ARM64 か確認したい」というときに使えるワンライナーです。
# OS のアーキテクチャを表示(例: ARM64 / 64-bit)
(Get-CimInstance Win32_OperatingSystem).OSArchitecture
# Visual Studio のプロセス(devenv.exe)が ARM64 かどうか
(Get-Process devenv).ProcessName # 実行中であることを確認
(Get-Process devenv).Modules | Out-Null # 参照用。権限により一覧できない場合あり
# VS のバージョン(例:17.14.8)
&"C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\devenv.exe" /?
# ※ 起動バナーや [ヘルプ] - [バージョン情報] でも確認可
よくある質問(FAQ)
Q. 拡張側が ARM64 に対応したら入りますか? A. はい。Visual Studio 拡張は 17.4 以降で ARM64 が公式サポートされており、extension.vsixmanifest に ARM64 の InstallationTarget が追加され、必要な依存が ARM64 でビルドされていれば ARM64 版 VS に導入できます。対応は各拡張作者次第です。
<dt>Q. Bicep 拡張の “バージョン条件” は満たしているのに、なぜ失敗する?</dt>
<dd>A. 17.10 以上という “バージョン条件” は満たしています(v17.14.8)。しかし <strong>アーキテクチャ条件(ARM64 対応の有無)が別に存在</strong>し、ここで弾かれています。:contentReference[oaicite:20]{index=20}</dd>
<dt>Q. x64 版 Visual Studio を ARM64 PC 上で使う裏技は?</dt>
<dd>A. 公式にはサポートされません。インストーラは実行時に ARM64 を検出し ARM64 版を入れます。どうしても必要な場合は <strong>x64 の仮想マシン/リモート開発</strong>が現実的です。:contentReference[oaicite:21]{index=21}</dd>
実務での推奨ワークフロー(ARM64 を維持する場合)
- VS Code(ARM64)+Bicep 拡張でローカル編集・型検証・補完。
- Bicep CLIでビルド(
bicep build)、PR に.jsonを成果物として添付。 - CI(GitHub Actions / Azure Pipelines 等)で
az deploymentを実行。環境差分は.bicepparamに集約。 - 必要に応じ x64 のビルド・運用ツール群は VM 側へ寄せ、ARM64 端末は “編集 + 確認 + 実行” に徹する。
運用上の注意とベストプラクティス
- 拡張のサポート状況を定期点検:Marketplace で Bicep 拡張の更新履歴・要件(Requires VS 17.10+)を確認。ARM64 対応が入ったら ARM64 版 VS でも導入可能になります。
- ログを保全:VSIX 失敗ログ(
%TEMP%\VSIXInstaller_*.log)はインシデント管理に残してください。次回トラブル時のファーストエイドになります。 - VM/リモートの標準化:x64 環境が必須なチームは、テンプレート化した VM イメージ(VS 2022 + 必須拡張)を配布すると安定します。
まとめ
- エラーの本質:Bicep の VS 拡張は 17.10+ が要件だが、ARM64 版 Visual Studio には未対応で、NoApplicableSKUsException になる。
- x64 版 VS を ARM64 PC に直接入れる道はない(インストーラが ARM64 を強制・SxS も不可)。
- 現実解:VS Code の Bicep 拡張または Bicep CLI を使う。VS 内統合が必要なら x64 VM/リモートで運用する。
付録:評価の視点(意思決定の指針)
| 観点 | VS(ARM64)+VS Code 切替 | VS(x64 on VM/Remote) |
|---|---|---|
| 学習コスト | 低〜中(VS Code は軽く導入しやすい) | 中(VM 構築・運用・リモート接続の整備が必要) |
| パフォーマンス | 高(ARM64 ネイティブ) | 中(ネットワーク/ホスト負荷に依存) |
| 拡張互換性 | VS 依存なし。VS Code の Bicep 拡張は成熟 | VS の拡張資産を幅広く活用可能 |
| 将来性 | ◎(ARM64 ネイティブの潮流に合致) | ○(x64 の資産は当面主流だが ARM64 対応は進む) |
付録:トラブル再発防止テンプレート(社内ナレッジ共有用)
以下をコピーしてインシデント管理ツールに貼り付ければ、次回からの初動が速くなります。
[症状]
Visual Studio 2022 (ARM64) で vs-bicep.vsix の導入に失敗。
VSIXInstaller.NoApplicableSKUsException
[原因]
拡張が ARM64 版 Visual Studio を対象としていない。
[再現手順]
1. Visual Studio 2022 (ARM64) v17.14.8 を用意
2. vs-bicep.vsix を実行
3. NoApplicableSKUsException で失敗
[確認ポイント]
* VS のバージョンは 17.10+ か → YES
* VS のアーキテクチャは ARM64 か → YES
* VSIX ログに Applicable SKUs = 0 → YES
[恒久対策(推奨いずれか)]
A) VS Code の Bicep 拡張へ移行
B) Bicep CLI でビルド/デプロイに移行
C) x64 の VM/リモートで VS 2022 + 拡張を利用
[備考]
* ARM64 端末に x64 版 VS を入れる選択肢は原則なし(インストーラ仕様/SxS不可)。
最後に:この記事の想定読者と到達点
本稿は「Copilot+ PC など ARM64 端末に移行したが、従来の VS 拡張(Bicep 含む)が導入できない」というエンタープライズ開発者・IT 管理者を主な読者として想定しています。到達点は次の 3 点です。
- なぜ NoApplicableSKUsException になるかをアーキテクチャの観点で説明できる。
- ARM64 を維持する運用(VS Code/CLI)と、x64 を必要とする運用(VM/Remote)の二軸で意思決定できる。
- 翌日から使えるコマンド・手順・チェックリストを持ち帰れる。
ARM64 と x64 の “橋渡し” をうまく設計すれば、Bicep の IaC(Infrastructure as Code)実践はこれまで通り、あるいはそれ以上にスムーズに回せます。まずは小さく VS Code + Bicep CLI から始め、必要に応じて VM/リモートを足す二段構えで、段差のない移行を目指しましょう。

コメント