Chocolatey 0.9.8.28をインストールした後、この問題が発生しました。ここに記載されているほとんどの解決策を試しましたが、Powershellコマンドラインで 'bower -v'を認識させることができませんでした。Chocolatey InstallはPowershellの「すべて」についてのものなので、これは少し奇妙に思えました。最終的に、Powershellが更新されたPATH変数設定を見つけられるようにパスを設定することで成功しましたが、その理由と方法を理解するための助けが必要でした。
最初にPowershellで失敗した後、(Powershellでcmd / cを使用せずに)標準のDOSコマンドラインに移動し、上記で説明したパス設定のすべてのバリエーションを正常に実行し、bowerおよびbowerコマンドが認識されることに成功しました。 DOSコマンドライン。また、cmdウィンドウに完全な更新パス(C:\ ProgramData \ chocolatey \ lib \ nodejs.commandline.0.10.34 \ tools)が表示されました-バージョン番号は、名誉あるKimchiManによるリストから変更される可能性があることに注意してください。
このPATHは、新しいDOSコマンドラインウィンドウを閉じたり開いたりしても保持されましたが、Powershellウィンドウでは認識されませんでした。
その後、次の関連するディスカッションを発見しました。Powershellパス設定を設定します。
これは、Powershellが起動時にHKLMパス設定バージョンを認識することを示しています。また、セッション(非永続的)またはレジストリ(永続的)にパスを設定できます。以下はその議論から直接です。
これらのコマンドは、powershell SESSIONのPATHを一時的に設定できます。
$env:Path = 'New path'
[System.Environment]::SetEnvironmentVariable('Path', 'New Path', 'Process')
これらのコマンドは、すべての新しいPowershellセッションのPATHを永続的に設定できます。
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Session Manager\Environment' -Name 'Path' -Value 'New Path'
[System.Environment]::SetEnvironmentVariable('Path', 'New Path', 'Machine')
しかし、私は以前にプログラムでレジストリ設定を設定することにいじっていて、1行または2行のPSスクリプトがタスクに完全に対応しているとは思いません。だから私も試しませんでしたこのオプションを。
代わりに、コントロールパネル/システムコンソールに移動し、[環境変数]ダイアログでパスを変更しました。DOSコマンドラインでset PATHを使用してパスを変更するために行ったすべての作業がWindowsセッション中に機能したことに気付きましたが、Dosセッションが次のように実行されていても、新しいパスエントリは環境変数/レジストリに保持されませんでした。管理者。
コントロールパネルでこの変更を加えた後、Chococlateyのツールフォルダーにあるバウアーの更新されたパス(およびおそらくその後のすべてのツールのインストール)が永続的に設定され、DOSコマンドラインとPowershellコマンドラインの両方でバウワーが使用可能になりました。
お役に立てれば...