Tips/SetJAVA_HOME のバックアップ差分(No.10)
- バックアップ一覧
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- バックアップ を表示
- Tips/SetJAVA_HOME へ行く。
- 1 (2011-01-28 (金) 19:32:31)
- 2 (2011-05-07 (土) 17:18:01)
- 3 (2012-08-03 (金) 18:09:16)
- 4 (2012-08-24 (金) 14:25:21)
- 5 (2012-10-29 (月) 22:00:20)
- 6 (2012-10-30 (火) 01:10:50)
- 7 (2012-12-31 (月) 19:06:57)
- 8 (2013-03-05 (火) 18:32:49)
- 9 (2013-04-20 (土) 20:10:12)
- 10 (2013-04-23 (火) 14:29:08)
- 11 (2013-06-17 (月) 16:15:05)
- 12 (2013-09-14 (土) 21:23:31)
- 13 (2013-09-15 (日) 02:03:37)
- 14 (2014-06-04 (水) 22:05:12)
- 15 (2014-09-03 (水) 18:20:53)
- 16 (2014-11-08 (土) 01:41:12)
- 17 (2015-09-29 (火) 19:26:52)
- 18 (2016-01-07 (木) 15:25:28)
- 19 (2016-09-26 (月) 15:49:14)
- 20 (2017-03-28 (火) 15:29:57)
- 21 (2017-10-27 (金) 16:26:13)
- 22 (2018-11-22 (木) 16:26:11)
- 23 (2019-04-19 (金) 13:43:27)
- 24 (2019-04-19 (金) 15:42:31)
- 25 (2019-04-19 (金) 17:52:50)
- 26 (2019-08-14 (水) 15:52:03)
- 追加された行はこの色です。
- 削除された行はこの色です。
TITLE:環境変数JAVA_HOMEを変更して使用するJDKを切り替える #navi(../) RIGHT:Posted by &author(aterai); at 2008-08-26 *環境変数JAVA_HOMEを変更して使用するJDKを切り替える [#w064c463] #adsense2 #ref(http://lh6.ggpht.com/_9Z4BYR88imo/TUKZTxK0pwI/AAAAAAAAAz4/qohiEl4CJss/s800/JAVA_HOME.png) **概要 [#c5e672d8] 環境変数``JAVA_HOME``を変更するバッチファイルを作成し、コマンドプロンプト(``Windows``)で使用する``JDK``を切り替えます。 **バッチファイル [#w35a17ec] - [http://terai.xrea.jp/data/java/jdk.bat jdk.bat] #code{{ @echo off set JDK_BASE=C:\Program Files\Java\ if "%~1" == "" goto list set JDK_TEMP=%JDK_BASE%jdk%~1 if not exist "%JDK_TEMP%" goto error set JAVA_HOME=%JDK_TEMP% goto end :list dir "%JDK_BASE%jdk*" goto end :error echo ---- echo Not exist %JDK_TEMP% :end echo ---- echo JAVA_HOME=%JAVA_HOME% "%JAVA_HOME%\bin\java" -version set JDK_BASE= set JDK_TEMP= }} **シェルスクリプト [#q2846991] - [http://terai.xrea.jp/data/java/jdk.sh jdk.sh] #code{{ #!/bin/sh cygwin=false; case "`uname`" in CYGWIN*) cygwin=true ;; CYGWIN*) cygwin=true; esac JDK_BASE=/usr/lib/jvm if $cygwin ; then if $cygwin; then JDK_BASE=/cygdrive/c/Program\ Files/Java fi JDK_TEMP=$JDK_BASE/jdk$1 if [ "$1" = "" ]; then ls --time-style=long-iso -l "$JDK_BASE" elif [ -e "$JDK_TEMP" ]; then export JAVA_HOME=$JDK_BASE/jdk$1 else echo Not exist $JDK_TEMP fi echo "----" echo $JAVA_HOME }} - ドットをシェルスクリプトの前に付けて実行すると、スクリプトを起動したシェルで起動されるのでその環境変数を更新することができる -- [http://togetter.com/li/72996 シェルスクリプトで環境変数を適用させるには IS01 Linux - Togetter] -- [http://www.ne.jp/asahi/hishidama/home/tech/unix/sh.html UNIXシェルスクリプトメモ(Hishidama's UNIX shell script Memo)] $ . jdk.sh 1.7.0_09 **解説 [#ad3fd963] ``ant.bat``や``jruby.bat``などは、``JAVA_HOME``環境変数を使って、利用する``JDK``のパスを取得しているので、これらのコマンドを実行する前に、``set JAVA_HOME``すれば、そのコマンドプロンプト内で使用する``JDK``を簡単に切り替えることができます。 上記のバッチファイルは、その際、``set JAVA_HOME=C:\Program Files\...``と一々入力しなくてすむようにするためのものです。 - ``JDK``はデフォルトのディレトクリにインストールされていることを想定 ** 使用方法 [#u56fafa2] - 引数なしで、現在の``JAVA_HOME``と、``C:\Program Files\Java``以下にインストールされている``jdk``を一覧表示 #code{{ C:\tmp>jdk ドライブ C のボリューム ラベルは WINDOWS です ボリューム シリアル番号は xxxxxxxxx です C:\Program Files\Java のディレクトリ 2008/09/03 16:25 <DIR> jdk1.4.2_17 2007/10/03 18:34 <DIR> jdk1.5.0_13 2008/02/06 17:17 <DIR> jdk1.5.0_14 2008/03/17 13:48 <DIR> jdk1.5.0_15 2008/07/18 11:28 <DIR> jdk1.5.0_16 2008/12/03 19:55 <DIR> jdk1.5.0_17 2007/10/31 21:24 <DIR> jdk1.6.0_03 2008/02/28 15:38 <DIR> jdk1.6.0_04 2008/04/17 19:41 <DIR> jdk1.6.0_05 2008/04/17 19:43 <DIR> jdk1.6.0_06 2008/07/23 17:37 <DIR> jdk1.6.0_07 2008/10/16 12:55 <DIR> jdk1.6.0_10 2008/12/12 14:58 <DIR> jdk1.6.0_11 2008/12/12 14:56 <DIR> jdk1.6.0_12 2008/12/10 20:56 <DIR> jdk1.7.0 0 個のファイル 0 バイト 15 個のディレクトリ 11,321,315,328 バイトの空き領域 ---- JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10 java version "1.6.0_10" Java(TM) SE Runtime Environment (build 1.6.0_10-b33) Java HotSpot(TM) Client VM (build 11.0-b15, mixed mode, sharing) }} - 引数ありで、``JAVA_HOME``の切り替え -- 指定したディレクトリが存在しない場合は、なにもしない #code{{ C:\tmp>jdk 1.7.0_ ---- Not exist C:\Program Files\Java\jdk1.7.0_ ---- JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10 C:\tmp>jruby -J-version java version "1.6.0_10" Java(TM) SE Runtime Environment (build 1.6.0_10-b33) Java HotSpot(TM) Client VM (build 11.0-b15, mixed mode, sharing) C:\tmp>jdk 1.7.0 ---- JAVA_HOME=C:\Program Files\Java\jdk1.7.0 C:\tmp>jruby -J-version java version "1.7.0-ea" Java(TM) SE Runtime Environment (build 1.7.0-ea-b31) Java HotSpot(TM) Client VM (build 14.0-b01, mixed mode, sharing) }} //---JREのインストールはキャンセル(これをキャンセルしても、JDKのインストールまでキャンセルされる訳ではないので無視する) //--環境変数JAVA_HOME の設定 //---正式にリリースされた最新版をデフォルトとしてユーザー環境変数(またはシステム環境変数)に設定する //Linux なら、JPackage で? //それらの冒頭に直接JAVA_HOME は書き込まず、コマンドプロンプトで "set JAVA_HOME" して古いバージョンや、ベータ版などのJDKへ切り替えるようにしています。 //その際、一々 "set JAVA_HOME=C:\Program Files\..." とか打ち込むのは面倒なので、以下のようなバッチファイル((Linux なら、JPackage で?))を作成して使っています。 **参考リンク [#ad73888e] - [http://d.hatena.ne.jp/masanobuimai/20070221#1172050845 ローカルのJava環境の管理について - marsのメモ] -- 参考にした管理方法 -[http://www.02.246.ne.jp/~torutk/java/install/jdk7onwindows7.html#SEC18 Windows 7へJDK 7をインストール - Object-Oriented & Java maneuver 別室] -- ``32bit``版と``64bit``版を切り替える必要があるなら「環境設定バッチファイル(``setjdk.bat``)」が便利そう。 **コメント [#n9687ed4] #comment