山pの楽しいお勉強生活

勉強の成果を垂れ流していきます

JDK 1.8.0_221を管理者権限がないWindowsにインストールする

今時Java8?管理者権限がないとかどういうこと?とか色々言いたい事はありますが、やらなきゃいけない事もあるのです。

同内容の記事がWeb上で見受けられますが、落とし穴いっぱいなので改めて記事にしています。

手順

  • jdkを取得
  • 7zipインストール
    • 管理者権限が必要www(矛盾)
    • ↓の注意点に記載しています。
  • jdk-8u221-windows-x64.exe」を解凍
    • ↓「x」は「-」は付けない、「-o」の後はスペースなし
    • C:\work\20190911\7zip\7z.exe x C:\work\20190911\a\jdk-8u221-windows-x64.exe -oC:\work\20190911\a\o
  • 111ファイルからtool.zip(JDKの実体)を取得
    • バージョンによってはexe展開後にtool.zipが存在することもあるようです。
    • 111は cab ファイルなので展開が可能。
    • extrac32 C:\work\20190911\a\o\.rsrc\1033\JAVA_CAB10\111
  • tool.zipを展開
    • zipの展開方法は省略
  • jarが.packファイルとなっているらしいので、jarに変換
    • cd C:\work\20190911\tools
    • for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
  • 確認
    • C:\work\20190911\tools\bin\java -version
  • toolsフォルダを任意のPATHに移動
    • move tools C:\tools\java\jdk-8u2212

※PATHやJAVA_HOMEの設定は省略(既にJavaがインストールされており、システム環境変数のPATHに設定されていると、ユーザ環境変数では上書きする事はできないので注意)

注意点

  • 7zipがインストールできない
  • jdkのexeを展開後に111が展開できない
    • 111はzipではなく cab です。
      • extrac32を利用して展開が可能です。
    • よく見るとディレクトリ名に書いてありますが、参考サイトをみるとzipとなっている所もあります。。。
  • jdkのexeを解凍後にtool.zipがない
    • tool.zipがあるかどうかはjdkのバージョンによって異なるようです。

参考