Javaのバージョンを動的に変更するバッチを作りました

Javaのバージョンを動的に変更するバッチを作りました
カテゴリ
技術
タグ
java
windows

Javaのバージョンを一時的に変えたいというニーズがあると思います。私も、普段はJava8で開発していて、たまに少し動作確認のためにJShell([note]Java9以降の機能。コマンドライン上でJavaを実行することができ、簡単な確認がすごくしやすい。[/note])を使いたいと思うことがあります。そのための切替バッチを作りました。

環境制約

  • Windows 日本語版
  • 管理者権限をもつこと
  • Javaが既にインストールされていること

参考

https://qiita.com/spamoc/items/635e1f9f26afddf3ad21

参考というか、やり方は全く同じです。batファイルを改良して実際に作ってみましたという話です。

 

手順

準備

    1. Javaのインストールディレクトリを調べる 基本は、「C:\Program Files\Java」のハズですが、もし別の場所にインストールしている場合はそのパスに読み替えてください。

    2. システム環境変数を編集する システム環境変数のJAVA_HOMEを以下とします。(上記Javaのインストールディレクトリが異なる場合は、そのパス+末尾に「\latest」をつけてください。)

      C:\Program Files\Java\latest

      システム環境変数のPATHの"先頭"に以下を加えます。

      %JAVA_HOME%\bin;

      <具体的なシステム環境変数の設定の仕方>

      1. "システム"を開きます 「Windowsキー」+「Pause」ボタンを押します。
      2. "システムの詳細設定"を押します。 2018 05 10 12h51 57 1024x423
      3. "環境変数"を押します。 2018 05 10 12h55 52 274x300
      4. JAVA_HOME設定 2018 05 10 12h57 44 275x300 上記のように、システム環境変数で「JAVA_HOME」を探し、編集します。(もし無ければ"新規"作成です) 変数:JAVA_HOME 値:C:\Program Files\Java\latest ※↑はJavaのインストールディレクトリ+\latest
      5. PATH設定 2018 05 10 13h04 34 275x300 上記のように、システム環境変数で「Path」を探し、編集します。(こちらは無いことはないです) ※既に入力されているものを消さずに以下を追記すること。既存のものを消してしまうと最悪システムが動かなくなることもあるので、厳重に注意して実施してください。 変数:Path 値:%JAVA_HOME%\bin; ※↑先頭に追記すること。末尾の";"を忘れずに。
    3. バッチをダウンロードする https://github.com/nisioka/CommandPromptBat/tree/mySample上記リンクが作成したバッチのURLです。 2018 05 10 23h09 22 300x144 "Clone or download"をクリックし、"Download ZIP"をクリックするとダウンロードできます。zipを解凍し、「switchingJava」ディレクトリに格納されているものが今回使用するバッチです。

    4. バッチ編集

      1. switchinJava.bat Javaのインストールディレクトリが「C:\Program Files\Java」でない場合、switchingJava.batを編集します。

      2. JavaX.bat 次はインストールされているJavaのバージョンに合わせて、切り替えたい分だけコピーして編集します。JavaX.batをコピーしてもいいですし、Java8~.batなどを編集してもよいです(名前も変更可)。 "XXX"の部分をJavaのインストールディレクトリの各バージョンに書き換えます。 以下はバージョン1.8.0_131の例です。ディレクトリ名の命名パターンはバージョンによって違うので、Javaインストールディレクトリを直接見てください。

使用方法

編集した各バージョン対応のバッチを実行するだけです。 バッチを実行すると、実行確認ダイアログがでるので、”はい”です。 2018 05 11 07h37 21 300x208


関連記事

  1. Spring Bootの2.7系から3.1系へのバージョンアップ対応のハマりどころ

    Spring_Boot.png

    Spring Bootのバージョンアップに際して、一部ソースコード修正などの対応が必要になる部分が少なからずあります。私がハマったところベースでいくつか対応方法を説明していきたいと思います。 サポート期間が、2.7.xと3.0.xとでほとんど変わらないため、多くは3.1.x…

  2. 【オンライン】 JJUG CCC 2022 Spring 発表資料・動画まとめ

    jjug.jpg

    2022-6-19(日)に行われた JJUG CCC 2022 Spring でのセッション発表資料・動画で公開されているもののリンクをまとめています。 情報取得元:twitterのハッシュタグ(#jjug_ccc)検索 JJUG CCCとは JJUG CCCは毎年…

  3. 【オンライン】 JJUGナイトセミナー「開発環境の最前線」

    pc.jpg

    JJUGナイトセミナー「開発環境の最前線」の簡単なまとめです。 VSCode で Java アプリの開発ができるってご存じですか? VSCode はエディタですが、VSCode に Java 開発用のプラグインをインストールすると Java…

  4. 【オンライン】 JJUG CCC 2021 Fall 発表資料・動画まとめ

    jjug.jpg

    2021-11-21(日)09:30 - 19:00 に行われた JJUG CCC 2021 Fall でのセッション発表資料・動画で公開されているもののリンクをまとめています。 情報取得元:twitterのハッシュタグ(#jjug_ccc)検索 JJUG CCCとは JJUG…

  5. 【オンライン】 JJUG CCC 2020 Fall 発表資料・動画まとめ

    jjug.jpg

    2020-11-07(土)09:30 - 19:00 に行われる JJUG CCC 2020 Fall でのセッション発表資料で公開されているものをまとめています。 情報取得元:twitterのハッシュタグ(#jjug_ccc)検索 JJUG CCC…

  6. 【オンライン】 JJUG CCC 2021 Spring 発表資料・動画まとめ

    jjug.jpg

    2021-05-23(日)09:30 - 19:00 に行われた JJUG CCC 2021 Spring でのセッション発表資料で公開されているものをまとめています。 情報取得元:twitterのハッシュタグ(#jjug_ccc)検索 JJUG CCC…