請問環境變數是什么?為什么各種辦公軟體、影像處理軟體、游戲都不需要搞什么環境變數?為什么IDE要搞環境變數,它特殊在哪里?
uj5u.com熱心網友回復:
環境變數是系統引數,windows系統可以在cmd中通過set命令列出或設定,最主要的是path,為了讓軟體可以找到java程式java是個公共程式,eclipse ,命令列等軟體都需要,這些軟體不知道java程式在哪里,所以在path中加入了java的路徑,就可以直接使用java
java還可以安裝多個版本,你在環境變數里指定的版本是預設使用的版本
eclipse需要找到java,依賴path 環境變數。
其他軟體也有依賴,依賴系統庫,所以的系統都有預設的path,windows/system32是windows系統一直有的。其他軟體在安裝程序中,把依賴的庫(主要是dll)安裝到系統庫目錄,所以可以直接運行
uj5u.com熱心網友回復:
環境變數,簡單地說就是讓程式可以自動調整適應用戶的配置而使用的用戶必須共同遵守約定的變數。比如A用戶想使用程式,但A用戶的啟動程式需要依賴的類別庫放在A路徑,B用戶也想使用程式,但B用戶的啟動程式需要依賴的類別庫放在B路徑,這樣每個用戶的機器環境千差萬別萬別,怎么能把這些千差萬別共通化從而讓程式可以無差異的使用呢?這就引入了環境變數。比如A用戶設定classpath環境變數為路徑A,B用戶設定classpath環境變數為路徑B,這樣程式只要讀取這個classpath環境變數,就能正確找到程式啟動所依賴的類別庫,這樣不管用戶的機器環境怎么千差萬別,只要用戶都遵守約定設定classpath環境變數,那程式就能無差別的運行。這就是環境變數存在的由來和特殊的地方。
辦公軟體,影像處理軟體,游戲等因為不是開發軟體,不會使用用戶額外第三方安裝的類別庫,所以不需要考慮用戶環境的差異;而像java這樣的開發軟體,用戶額外安裝的第三方軟體路徑可能不同,比如A用戶把json決議包放在A路徑,B用戶放在B路徑,那只要用戶都在classpatn變數追加json決議包的路徑,json決議包就能正常使用。所以開發軟體和一般的應用軟體還是稍有點區別。一般的應用軟體不需要考慮用戶環境的差別,所有的東西都統一集中在軟體的安裝路徑,所以沒必要使用環境變數。
uj5u.com熱心網友回復:
簡單說,設定之后,你的程式可以直接執行。uj5u.com熱心網友回復:
java代碼的運行是在虛擬機上運行,虛擬機要運行就需要各種環境。不同的系統需要的環境不同,所以要配置這些環境變數。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/179144.html
標籤:Java SE
