看板 Linux 關於我們 聯絡資訊
各位版友好 我用ubuntu 12.04 我已經從oracle上面安裝了JDK7 只是沒有設定export CLASSPATH跟export JAVA_HOME 我echo這兩個變數出來都是空的 只是java程式還是可以編譯 (用javac) 我看網路上面很多人都有設定這兩個變數 我想是要讓JVM可以找到預設的lib跟bin 不過為甚麼我沒有設定這兩個變數,JVM還是可以找到預設的lib? 真的有需要特別設定這兩個變數嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.169.131 ※ 編輯: Arim 來自: 140.117.169.131 (09/12 14:18) ※ 編輯: Arim 來自: 140.117.169.131 (09/12 14:23)
bitlife:CLASSPATH是用來設定非JDK/JRE內含的lib,通常路徑也不在 09/12 17:55
bitlife:JDK/JRE所在之目錄樹內. JAVA_HOME是給一些如Tomcat等第三 09/12 17:55
bitlife:方的Java框架使用,這是為了可以指定使用特定版本的JDK/JRE 09/12 17:56
bitlife:(有些系統上安裝有多個不同的JDK/JRE版本) 09/12 17:57
謝謝 那請問JVM是怎麼尋找預設的lib(例如標準函式庫的java.io.*) 我用 java -version可以找到目前所使用的版本 所以JVM是預設會去找java這隻程式所在的根目錄的lib嗎? ※ 編輯: Arim 來自: 140.117.169.131 (09/12 18:19) ※ 編輯: Arim 來自: 140.117.169.131 (09/12 18:20)
bitlife:我猜(猜表示我也不確知)應該是,至於找java/javac目前執行 09/12 20:58
bitlife:檔路徑,可參考以下faq的 1.14 09/12 20:59
thx ※ 編輯: Arim 來自: 140.117.169.131 (09/12 21:17)
awert:因為/usr/bin有去 link 其他地方 09/12 22:34
awert:去找用 update-alternatives 設定 java 的方式吧 09/12 22:34