備忘録。
Cygwin 環境はないので Scoop を試してみる。Scoop は Mac で言うところの Homebrew みたいなもの。
scoop.sh
PowerShell 5 以上が必要。
> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.18362.145
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.18362.145
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
実行ポリシーを変更してインストールする。
> Set-ExecutionPolicy RemoteSigned -scope CurrentUser
> Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
Initializing...
Downloading scoop...
Extracting...
Creating shim...
Downloading main bucket...
Extracting...
Adding ~\scoop\shims to your path.
'lastupdate' has been set to '2019-09-27T12:47:42.7720596+09:00'
Scoop was installed successfully!
Type 'scoop help' for instructions.
試してみる
無念にもプロキシ環境の場合は事前に設定すること。
今回は JDK をインストールしてみる。Scoop の JDK は Java bucket というものに含まれる。
> scoop search jdk
Results from other known buckets...
(add them using 'scoop bucket add <name>')
'java' bucket:
bucket/adoptopenjdk-hotspot-jre
bucket/adoptopenjdk-hotspot
bucket/adoptopenjdk-lts-hotspot-jre
bucket/adoptopenjdk-lts-hotspot
bucket/adoptopenjdk-lts-openj9-jre
bucket/adoptopenjdk-lts-openj9
bucket/adoptopenjdk-openj9-jre
bucket/adoptopenjdk-openj9
bucket/adoptopenjdk-upstream
bucket/ojdkbuild-full
bucket/ojdkbuild
bucket/ojdkbuild10-full
bucket/ojdkbuild10
bucket/ojdkbuild11-full
bucket/ojdkbuild11
bucket/ojdkbuild12-full
bucket/ojdkbuild12
bucket/ojdkbuild8-full
bucket/ojdkbuild8
bucket/ojdkbuild9-full
bucket/ojdkbuild9
bucket/openjdk
bucket/openjdk10
bucket/openjdk11
bucket/openjdk12
bucket/openjdk13
bucket/openjdk14
bucket/openjdk7-unofficial
bucket/openjdk9
bucket/oraclejdk
bucket/oraclejdk12
Java bucket を追加する。
> scoop bucket add java
Checking repo... ok
The java bucket was added successfully.
> scoop search jdk
'java' bucket:
adoptopenjdk-hotspot-jre (12.0.2-10)
adoptopenjdk-hotspot (12.0.2-10)
adoptopenjdk-lts-hotspot-jre (11.0.4-11)
adoptopenjdk-lts-hotspot (11.0.4-11)
adoptopenjdk-lts-openj9-jre (11.0.4-11-0.15.1)
adoptopenjdk-lts-openj9 (11.0.4-11-0.15.1)
adoptopenjdk-openj9-jre (12.0.2-10-0.15.1)
adoptopenjdk-openj9 (12.0.2-10-0.15.1)
adoptopenjdk-upstream (11.0.3-7)
ojdkbuild-full (12.0.1.12-1)
ojdkbuild (12.0.1.12-1)
ojdkbuild10-full (10.0.2-1.b13)
ojdkbuild10 (10.0.2-1.b13)
ojdkbuild11-full (11.0.3.7-1)
ojdkbuild11 (11.0.3.7-1)
ojdkbuild12-full (12.0.1.12-1)
ojdkbuild12 (12.0.1.12-1)
ojdkbuild8-full (1.8.0.212-1.b04)
ojdkbuild8 (1.8.0.212-1.b04)
ojdkbuild9-full (9.0.4-1.b11)
ojdkbuild9 (9.0.4-1.b11)
openjdk (12.0.2-10)
openjdk10 (10.0.2-13)
openjdk11 (11.0.2-9)
openjdk12 (12.0.2-10)
openjdk13 (13-33)
openjdk14 (14-16-ea)
openjdk7-unofficial (7u80-b32)
openjdk9 (9.0.4-12)
oraclejdk (12.0.2-10)
oraclejdk12 (12.0.2-10)
OpenJDK をインストールする。現時点では OpenJDK 12 がインストールされて、ユーザー環境変数に JAVA_HOME=~\scoop\apps\openjdk\current
が設定される。
> scoop install openjdk
Installing 'openjdk' (12.0.2-10) [64bit]
openjdk-12.0.2_windows-x64_bin.zip (187.4 MB) [===============================================================] 100%
Checking hash of openjdk-12.0.2_windows-x64_bin.zip ... ok.
Extracting openjdk-12.0.2_windows-x64_bin.zip ... done.
Linking ~\scoop\apps\openjdk\current => ~\scoop\apps\openjdk\12.0.2-10
'openjdk' (12.0.2-10) was installed successfully!
> java -version
openjdk version "12.0.2" 2019-07-16
OpenJDK Runtime Environment (build 12.0.2+10)
OpenJDK 64-Bit Server VM (build 12.0.2+10, mixed mode, sharing)
OpenJDK 13 をインストールしてみる。
> scoop install openjdk13
Installing 'openjdk13' (13-33) [64bit]
openjdk-13_windows-x64_bin.zip (186.8 MB) [===================================================================] 100%
Checking hash of openjdk-13_windows-x64_bin.zip ... ok.
Extracting openjdk-13_windows-x64_bin.zip ... done.
Linking ~\scoop\apps\openjdk13\current => ~\scoop\apps\openjdk13\13-33
'openjdk13' (13-33) was installed successfully!
> java -version
openjdk version "13" 2019-09-17
OpenJDK Runtime Environment (build 13+33)
OpenJDK 64-Bit Server VM (build 13+33, mixed mode, sharing)
バージョンを切り替える。
> scoop reset openjdk@12.0.2-10
Resetting openjdk (12.0.2-10).
Linking ~\scoop\apps\openjdk\current => ~\scoop\apps\openjdk\12.0.2-10
> scoop reset openjdk13
Resetting openjdk13 (13-33).
Linking ~\scoop\apps\openjdk13\current => ~\scoop\apps\openjdk13\13-33
その他
仕組み的に PATH が汚れないしバージョンの切り替えが簡単でいいかもしれない。ローカルの開発環境を構築するのに便利そう。というかその目的で作られたツールっぽい。
参考)