2013-11-23 154 views
0

我正在用Java編寫一個小程序。未分配環境變量

的代碼如下:

public class Env { 

/** 
* @param args 
*/ 
public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    String value; 
    value = System.getenv("CPATH_1"); 
    if (value != null) 
     System.out.format("%s%n", value); 
    else 
     System.out.format("Is not assigned.%n"); 
    value = System.getenv("CPATH_2"); 
    if (value != null) 
     System.out.format("%s%n", value); 
    else 
     System.out.format("Is not assigned.%n"); 
    } 
} 

,分配這兩個變量在系統環境設置存在,但消息是兩個變量:「未分配」,即「價值」是「空「 對彼此而言。

我在哪裏錯了?

+0

我對這個問題並不是很熟悉,但是我認爲如果您還提到您使用的操作系統來獲得更好的幫助,那將會很好。就像,我知道Linux是區分大小寫的,而Windows可能不是。 – Elena

+0

你是對的:我使用Windows 7. –

回答

0

使用其他形式的getenv():它返回所有環境變量的映射。全部打印出來。這將告訴你,如果這些在那裏,他們是如何拼寫,等等。

請記住,如果您在命令窗口中定義變量,然後在不同的窗口中運行此程序,它找不到那些定義。在程序運行之前,它們必須在全局範圍內定義。

+0

謝謝;我重新啓動了系統,問題解決了。 –

+0

在這個和任何StackOverflow問題中,'接受'並且如果它解決了你的問題,可能會提高答案;這就是聲譽如何建立的原因,並且更有可能讓您的未來問題得到關注。 – arcy