Articles

Powershellでパス変数を構成する

シナリオ:何らかの理由でWindowsマシン上で開発する必要があり、管理者ではありません。 あなたの会社はすべてのマシンで同じ古いJavaバージョンを強制しますが、より新しいバージョンを試してみたいと思っています。選択したフォルダにJDKバイナリ配布をダウンロードした後、IDEをセットアップしてそれを使用するのは本当に簡単ですが、PowershellからJavaを実行する場合は
通常、マシンは古いJavaバージョンを指すシステムパス変数で設定され、変更することはできません。 ユーザー変数のパスを変更しようとすると、新しくダウンロードしたJDKのブランドに場所を追加します。 万歳でしょ?

まあ。.. いいえno

ユーザーパスはシステムパスに延期され、実行可能ファイルを探すときにWindowsが最初の一致を選択することがわかります。幸いなことに、私たちのために、それはそのための回避策があることが判明しました! その.bashrcファイルを持つbashと同様に、Powershellはinitスクリプトをサポートしています。
initスクリプトを作成するには、Powershellから次のコマンドを実行します:

New-Item $profile -Type File -Force

ドキュメントフォルダに移動すると、新しいWindowsPowerShellという名前のPowershellスクリプトを含むサブフォルダがありますMicrosoft.PowerShell_profile.ps1。 そのファイルを編集し、次のような行を追加します。

 $Env:Path="C:\Users\my-user-name\apps\my-jdk-folder\bin;"+$Env:Path

新しいPowershellインスタンスを保存して開きます。 これで、次のコマンドで新しいパス変数を見ることができます。

echo $env:Path