0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Windowsでシンボリックリンクを使ってプロダクトのバージョンを切り替えられるようにする

Posted at

TL;DR

シンボリックを使ってプロダクト(たとえばjdk17.0.7とかjdk17.0.6とか)を切り替えるようにして、パスを通す箇所をシンボリックリンク(この例ではPATHやJAVA_HOMEをjdk_currentみたいなシンボリックリンク)にしとくと、バージョンアップ時に環境変数などを書き換えまくらなくて済むようになるよ。

やってみる

シンボリックリンクを貼る

jdkが入ってるフォルダーに移動して、New-Itemでシンボリックリンクを張る。

New-Item -ItemType SymbolicLink -Path "E:\PROGRAM\Amazon Corretto\jdk_current" `
  -Target ".\jdk17.0.7_7"

環境変数を設定する(一例)

sysdm.cplとかを叩いて、シンボリックリンクをパスをした設定を環境変数等に追加する。リブートするなどして環境変数をうまく読み込ませる。
以下ではJAVA_HOMEしか書いていないけど、PATHも追加した。

env_java_home.png

確認する

Symbolic linkの確認

PS E:\PROGRAM\Amazon Corretto> Get-ChildItem | Select-Object FullName, LinkType

FullName                                LinkType
--------                                --------
E:\PROGRAM\Amazon Corretto\jdk_current  SymbolicLink
E:\PROGRAM\Amazon Corretto\jdk1.8.0_222
E:\PROGRAM\Amazon Corretto\jdk17.0.7_7
E:\PROGRAM\Amazon Corretto\jre8
PS E:\PROGRAM\Amazon Corretto> Get-ChildItem .

    Directory: E:\PROGRAM\Amazon Corretto

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
l----          2023/04/30     0:47                jdk_current -> .\jdk17.0.7_7
d----          2019/08/29    23:01                jdk1.8.0_222
d----          2023/04/30     0:34                jdk17.0.7_7
d----          2019/08/29    23:01                jre8

PS E:\PROGRAM\Amazon Corretto>

javaコマンドの確認

PS E:\PROGRAM\Amazon Corretto> java -version
openjdk version "17.0.7" 2023-04-18 LTS
OpenJDK Runtime Environment Corretto-17.0.7.7.1 (build 17.0.7+7-LTS)
OpenJDK 64-Bit Server VM Corretto-17.0.7.7.1 (build 17.0.7+7-LTS, mixed mode, sharing)

今後

新しいJDKをインストールしたら、このシンボリックリンクを新しいJDKのパスに書き換えれば引き続き使い続けられる、という算段。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?