作者lueichun (你們看是小波耶!!!)
看板java
標題[問題] 一台電腦同時安裝兩套JDK
時間Thu Aug 15 18:39:58 2019
我原本有在我的電腦安裝JDK1.8,運作都很正常。而我現在想要再安裝JDK1.6,
JDK1.6裝完後位於這邊:
https://i.imgur.com/pXeE8ka.png
然後我將環境變數的JAVA_HOME,從1.8改成1.6:
https://i.imgur.com/05JvMhP.png
然後PATH這個變數,添加
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
接著再把下圖三個JAVA.EXE,複製到SYSTEM32資料夾底下:
https://i.imgur.com/JfJ96Ex.png
最後我再到登錄編輯程式,將JAVA的版本修改成1.6:
https://i.imgur.com/9gCPffz.png
https://i.imgur.com/gLuijAq.png
我想說這樣應該就可以將JDK版本,從1.8切換到1.6。所以我在CMD輸入java -version
測試,結果:
https://i.imgur.com/yHn59K2.png
看起來是沒有切換成功,電腦讀取到的JDK還是1.8的。
請問這樣還有哪邊要修改呢?我找了網路上不少文章都是做到我目前所做的就可以了,
也沒更進一步的做法,那麼還要些改哪邊呢?謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.167.53.44 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/java/M.1565865600.A.C66.html
1F:推 jej: Dos command 也是能設定JAVA_HOME的 08/15 19:00
2F:→ ssccg: 首先把那些exe複製到system32是沒意義的,不要這樣做 08/15 21:42
3F:→ ssccg: 然後PATH是有順序的,如果你是用Oracle的installer裝的java 08/15 21:43
4F:→ ssccg: 八成是加在PATH最前面,前面先找到java.exe就不會用後面的 08/15 21:45
5F:→ ssccg: 可以用where java列出path上所有的java 08/15 21:46
6F:→ ssccg: 另外JAVA_HOME是很多script、wrapper、launcher習慣用來找 08/15 21:47
7F:→ ssccg: java位置用的,但是跟直接執行java.exe沒有關係 08/15 21:48
8F:→ ssccg: 在使用那些程式時如果需要用別的java版本,就直接改script 08/15 21:49
9F:→ ssccg: 或程式設定檔指定JAVA_HOME或其他決定java路徑的設定值就好 08/15 21:50
10F:→ ssccg: 其實不一定要改系統path上是哪個java 08/15 21:51
11F:→ ssccg: 另外現在Oracle JDK已經不再免費,我個人是不再用installer 08/15 21:52
12F:→ ssccg: 裝java,都是下載OpenJDK執行時指定路徑... 08/15 21:56
13F:推 internetms52: 全用環境變數,不要混用 08/16 19:31
14F:推 maxsho: 有登出或重開機嗎?使用者變數登出在登入才會套用 08/16 20:29
15F:推 jej: 看你最後一張圖 安裝第二個jdk的目的 猜測應該是要用J老闆5 08/17 05:20
16F:→ jej: 就寫一個script指定JAVA_HOME然後call J老闆的啟動程式即可 08/17 05:20
17F:→ jej: 不要換java.exe也不要改register 08/17 05:20
18F:→ jej: 其實jdk可以帶著跑portable 與register無關 08/17 05:20
將環境變數設到Administrator那邊就好了。感謝。
※ 編輯: lueichun (1.167.52.163 臺灣), 08/22/2019 18:46:10
19F:→ dennisxkimo: 個人都portable批次開頭set環境變數 08/23 08:04
20F:推 eggeggss: 為啥不放到docker裡 08/23 17:23