0

OS(Windows XP)env変数を取得したいのですが、私のコードは以下です(jdk 1.6):

public class TestEnv{

public static void main(String...args){
    System.out.println(System.getenv("catalina_home"));
 }
}

catalina_home最初に、私のPCで呼び出される変数はありません。それは出力し、次に変数nullを追加します。それでも出力します。Eclipseをシャットダウンして再起動すると、正しい値が出力されます。このコードを cmd コンソールでこのように実行すると、正しい値を取得するために新しい cmd コンソールを閉じて再起動する必要があります。既存の変数を削除すると、Eclipse または cmd コンソールを再起動するまで、最初に null 以外の値が出力されます。出力できます。したがって、EclipseまたはcmdコンソールにはOS環境変数がキャッシュされていると思いますが、実際にキャッシュされていても証拠はありません。理由を知りたいですか? どんなアイデアでも大歓迎です。どうも。catalina_homeMy Computer > Advanced > Environment Variablesnullnull

4

3 に答える 3