May 24, 2006

[Misc] 開発環境における環境変数の設定

Windows における環境変数にはスコープの違いによりシステム環境変数、ユーザ環境変数、一時的な環境変数の 3 種類の環境変数がある。

システム環境変数
システムのすべてのユーザーに適用される環境変数
ユーザ環境変数
それぞれのユーザーごとに異なる環境変数
一時的な環境変数
特定の CMD プロセス内でのみ有効な環境変数
開発をしていて驚くのが、何でもかんでもシステム環境変数を変更しようとする人が結構いること。 環境変数を設定するという目的からすると別に構わないのだけれど、安全性を考えると余り好ましくない。

環境変数の設定指針

チームメンバへの説明をするときのために設定指針をまとめておく。

1. システム環境変数を変更しない

特にパスやパスに類する環境変数(JAVA_HOMEなど)はシステム環境変数として設定すべきではない。 システム環境変数は新規にソフトウェアをインストールする際に、インストーラに変更されてしまうことがあることを考慮しないといけない。 例えば、Oracle Database Server をインストールするとシステム環境変数の PATH の先頭に Oracle 内の JDK が追加されてしまう。

2. ユーザ環境変数を変更しない

こちらもシステム環境変数と同様。

3. 環境変数はバッチファイルで設定する

別に CMD 起動後に毎回手で打っても良いのだけれど、バッチファイルの方が間違いがないのと面倒がないのでオススメ。

4. パスを追加する際は既存のパスの先頭に追加する

言わずもがな。 既存のパスの後ろに追加する人にはさすがに出会ったことはないが、念のため。

> set JAVA_HOME=c:\_java\jdk\1.6.0

> set ANT_HOME=c:\_java\tool\ant\1.6.5

> set PATH=%JAVA_HOME%\bin;%ANT_HOME%\bin;%PATH%

5. パスを追加する際は、追加後に必ずバージョンを確認する

パスを変更したら、必ず使用する前にバージョンを確認すること。 先頭に追加すればまず間違いは無いが、設定をミスしていると予期しないバージョンのものを使用してしまっている可能性がある。 プロジェクトでは通常使用するソフトウェアのバージョンが規定されている。 自分が使用しているソフトウェアのバージョンくらいはきちんと把握しておいて欲しい。 少なくとも JDK、JRE のバージョンくらいは・・・。

> set JAVA_HOME=c:\_java\jdk\1.6.0

> set PATH=%JAVA_HOME%\bin;%PATH%

> java -version
java version "1.6.0-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.6.0-beta-b59g)
Java HotSpot(TM) Client VM (build 1.6.0-beta-b59g, mixed mode, sharing)

Posted in Misc | このエントリーをはてなブックマークに追加 | この記事をクリップ! livedoor クリップ |