Shopify cliの環境変数設定について

Topic summary

主題: Shopify CLI を v2 から v3 に更新後、Windows で shopify コマンドが「認識されていません」となる問題。

  • 原因の焦点: PATH(コマンド検索に使う環境変数)に Node.js と npm のディレクトリが含まれていない、または順序が不適切。

  • 最新の対応策: GitHub Issue 記載のワークアラウンドに従い、PowerShell で $env:PATH を確認・修正。

  • 具体手順:

    1. PowerShell で $env:PATH を出力して現状確認。
    2. 次を PATH に追加(不足時):C:\Program Files\nodejs; / C:\Users{ユーザー名}\AppData\Roaming\npm;
    3. nodejs のパスを npm のパスより上位に配置。
    4. 反映後に再度 $env:PATH を確認し、使用中のターミナル(PowerShell/Git Bash 等)を再起動。
  • 補足: Windows ではユーザー環境変数→システム環境変数の順に PATH が解決される。Path の表記に注意。

  • 結果: 提示手順で問題は解決。スレッドは解決済み。

Summarized with AI on January 25. AI used: gpt-5.

shopify cliを2から3にアップグレードしようと思い、アンインストールしてこちで「npm install -g @Shopify_77 /cli @Shopify_77 /theme」インストールしたらshopifyコマンドが認識されず困っております。

どのように設定したらよろしいでしょうか? shopify cliの環境変数設定の仕方など教えていただければと思います。

エラー内容:

‘shopify’ は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

よろしくお願いいたします。

@Kou231

興味があり調査してみました。

私自身は同様の問題に遭遇したことがないのですが、

ShopifyのGithub Issueに解決策が提示されていました。

(あくまでワークアラウンドとのことです。)

https://github.com/Shopify/cli/issues/1405#issuecomment-1439043335

上記リンクの、FIX STEPSをお読みいただくのが間違いないですが、

ざっくり解説いたします。

(少しアレンジしてあります。)

(1) Windowsの環境変数を確認する。

例えば、PowerShellで下記を実行し、nodejsとnpmのPATHが含まれているか確認します。

$env:PATH

ちなみに、私の手元のWindowsでは下記のように出力されました。

C:\Python311\Scripts\;C:\Python311\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\Git\cmd;C:\ProgramData\chocolatey\bin;C:\HashiCorp\Vagrant\bin;C:\Program Files\nodejs\;C:\Ruby32-x64\bin;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;C:\Users\admin\AppData\Roaming\npm;C:\Users\admin\AppData\Local\Programs\Microsoft VS Code\bin

見にくいので、セミコロンで改行します。

C:\Python311\Scripts\;
C:\Python311\;
C:\WINDOWS\system32;
C:\WINDOWS;C:\WINDOWS\System32\Wbem;
C:\WINDOWS\System32\WindowsPowerShell\v1.0\;
C:\WINDOWS\System32\OpenSSH\;
C:\Program Files\Git\cmd;
C:\ProgramData\chocolatey\bin;
C:\HashiCorp\Vagrant\bin;
C:\Program Files\nodejs\;
C:\Ruby32-x64\bin;
C:\Users\admin\AppData\Local\Microsoft\WindowsApps;
C:\Users\admin\AppData\Roaming\npm;
C:\Users\admin\AppData\Local\Programs\Microsoft VS Code\bin

nodejsとnpmの2つのPATHが含まれています。

この状態であればおそらくコマンドを実行できます。

(2) nodejsもしくはnpmもしくは両方のPATHが存在しないよでしたらPATHを追加します。

この時、nodejsのPATHは、npmのPATHの上に位置するようにします。

nodejsのPATHは特殊なインストールをされていなければ私と同じはずです。

C:\Program Files\nodejs\;

npmのパスは、adminの部分をnpmをインストールしたユーザー名に変更されれば良いはずです。

C:\Users\{ご自身のユーザー名}\AppData\Roaming\npm;

Windowsの環境変数の設定方法は下記のサイト様の記事が参考になるかもしれません。

https://anykey.bz/win/win10-path/

なお、記事中では、

[PATH]と表現されていますが、

実際の記載はPathです。

私の場合は、

nodesのPATHはユーザー環境変数に、

npmのPATHはシステム環境変数に、

記載されていました。

($env:PATH 実行時に、ユーザー環境変数 → システム環境変数の順に出力されるようです。)

(3) 全ての設定が完了したら$env:PATHで、追加したPATHが出力されるか確認する

(4) 問題ないようであれば、Shopfy cliを実行したターミナル(PowerShellやGit Bashなど)を念のため再起動する

以上です。

私自身が問題を再現できていないのでこれで確実に直るとはいい切れないのですが、

参考になる情報があれば幸いです。

(キュー田辺)

1 Like

解決しました。ありがとうございます。

1 Like