- 1 1. 什麼是 Java?在 Ubuntu 中需要 Java 的情境
- 2 2. 在 Ubuntu 中可選擇的 Java 類型(OpenJDK vs Oracle JDK)
- 3 3. 在 Ubuntu 安裝 Java 前的準備事項
- 4 4. 在 Ubuntu 安裝 Java 的方法【基礎篇】
- 5 5. 設定 JAVA_HOME 的方法【環境變數設定】
- 6 6. 管理與切換多個 Java 版本的方法
- 7 7. 常見錯誤與對應的解決方法
- 8 8. 使用圖形介面(GUI)安裝 Java 的方法【適合初學者】
- 9 9. Java 開發環境建置【進階加強版】
- 10 10. 常見問題集(FAQ)
1. 什麼是 Java?在 Ubuntu 中需要 Java 的情境
Java 是什麼樣的程式語言?
Java(Java 語言)是一種廣泛使用的物件導向程式語言。其最大的特點是「一次撰寫,到處執行(Write Once, Run Anywhere)」的設計理念,可以不依賴特定的作業系統或裝置來執行應用程式,這是它的一大優勢。
Java 被廣泛應用於桌面應用程式、Web 應用程式、行動應用(特別是 Android 開發)等多種開發場景。此外,也經常用於建置大型企業系統與金融系統,是至今仍活躍的重要語言之一。
Java 在 Ubuntu 中扮演什麼角色?
即使是在 Ubuntu 這類的 Linux 系統中,Java 也是非常重要的存在。以下是一些常見需要使用 Java 的情況:
1. 執行以 Java 開發的應用程式
許多軟體是使用 Java 開發的,執行這些程式時需要 Java 執行環境(JRE)。例如,開發工具如「Eclipse」和「IntelliJ IDEA」、資料庫管理工具如「DBeaver」等都需要 Java 才能啟動。
2. 建立 Java 程式設計與開發環境
無論是程式設計師還是學生,若要在 Ubuntu 上學習 Java 或開發 Java 應用程式,就需要安裝 Java 開發工具包(JDK)。由於 Ubuntu 是受歡迎的開發環境,與 Java 的相容性也很好,因此許多開發者選擇這個組合。
3. 執行伺服器應用程式
Java 是許多 Web 伺服器框架(例如 Tomcat 和 Spring Boot)的基礎。在 Ubuntu 伺服器上運行以 Java 編寫的 Web 應用時,也需要事先安裝 Java 環境。
總結:Ubuntu 與 Java 的相容性極佳
由於 Ubuntu 是開源且輕量化的作業系統,非常適合搭配像 Java 這類跨平台語言使用,因此受到許多開發者的支持。只要在 Ubuntu 中安裝 Java,不論是使用應用程式、進行開發或架設伺服器都能應對自如。
2. 在 Ubuntu 中可選擇的 Java 類型(OpenJDK vs Oracle JDK)
Ubuntu 可用的 Java 選項有哪些?
在 Ubuntu 中,主要有兩種可用的 Java 開發環境,分別是 OpenJDK(開放式 Java 開發工具包) 和 Oracle JDK(甲骨文 Java 開發工具包)。
兩者都可以用來執行與開發 Java 程式,但在開發公司、授權方式與提供方式上存在差異。根據用途與需求,選擇最適合的 JDK 非常重要。
什麼是 OpenJDK?(Ubuntu 的預設 JDK)
OpenJDK(Open Java Development Kit) 是 Java 的開放原始碼實作,由 Sun Microsystems(現為 Oracle)主導開發,目前仍以開放模式持續更新中。
在 Ubuntu 中,OpenJDK 是預設使用的 JDK,可以透過 apt
指令輕鬆安裝。
OpenJDK 的主要特點
- 完全免費,且可用於商業用途
- 可從 Ubuntu 官方套件庫簡單安裝
- 定期提供安全更新
- 開發穩定性高,企業採用案例眾多
若無特別需求,一般開發用途選擇 OpenJDK 即可滿足需求。
什麼是 Oracle JDK?(附官方支援的 JDK)
Oracle JDK 是由 Oracle 公司提供的官方 Java 實作版本,基於 OpenJDK 並加入效能優化與與特定工具的整合。
但需注意的是,Oracle JDK 的授權條件不同,商業用途可能需簽訂授權合約(※個人學習用途則無此限制)。
Oracle JDK 的主要特點
- 可獲得 Oracle 官方支援與維護
- 商業用途需確認授權條件
- 快速提供安全性修補
- 包含部分 OpenJDK 沒有的額外功能
雖然在 Ubuntu 上安裝需要一些手動設定,但可從官方網站下載並安裝。
OpenJDK 與 Oracle JDK 的差異總整理
比較項目 | OpenJDK | Oracle JDK |
---|---|---|
提供單位 | 開源社群 | Oracle 公司 |
授權方式 | GPL + Classpath Exception | Oracle Binary Code License(商業用途需注意) |
費用 | 免費 | 商業用途可能需付費 |
使用情境 | 一般開發、學習、內部工具 | 商業服務、大型系統部署 |
安裝方式 | 可用 apt 簡單安裝 | 需手動下載與設定 |
結論:大多數 Ubuntu 使用者建議選擇 OpenJDK
若你只是想在 Ubuntu 上建構 Java 開發環境,使用 OpenJDK 即已足夠。其穩定性高,並可在多數框架與函式庫中正常運作。
不過,如果你需要 Oracle 的官方支援或有商業部署需求,也可以選擇 Oracle JDK。請依照實際用途選擇合適的 JDK。
3. 在 Ubuntu 安裝 Java 前的準備事項
在安裝 Java 前應確認的事項
在 Ubuntu 中安裝 Java 的流程本身並不困難,但為了讓整個過程順利進行,事先準備幾個步驟會非常重要。特別是對於初次使用 Ubuntu 的新手,或已經安裝過其他軟體的使用者,請先確認以下幾個項目。
1. 更新套件清單至最新狀態
Ubuntu 安裝軟體時使用 APT(Advanced Package Tool)這個套件管理系統。如果 APT 所參照的「套件清單」是舊的,可能會出現找不到 Java 套件、或安裝到過舊版本等問題。
因此,請先執行以下指令,更新整個系統的套件資訊:
sudo apt update
這個指令會讓 APT 取得最新的套件清單,確保你能順利安裝正確的 Java 版本。
2. 確認系統中沒有不必要的 Java 衝突套件
有時候,如果系統中已經安裝了舊版的 Java 套件(例如舊版的 JDK 或 OpenJRE),在安裝新版 Java 時可能會產生衝突。
可以使用下列指令檢查是否已有 Java 相關套件安裝:
java -version
如果執行後出現 Java 的版本資訊,表示系統中已經安裝了 Java。在這種情況下,建議先解除安裝舊版本,再重新安裝以避免環境衝突。
3. 確保具有管理者權限(sudo)
安裝 Java 涉及對系統資料夾的修改,因此需要具備 sudo 權限。通常,安裝 Ubuntu 時所建立的使用者帳號會自動具備 sudo 權限,但萬一沒有,會出現如下錯誤訊息:
使用者 'yourname' 不在 sudoers 檔案中。這次事件將被回報。
如果出現這種訊息,請與系統管理者聯繫,或使用具有 root 權限的帳號進行作業。
總結:事前準備能避免安裝時出現問題
雖然安裝 Java 本身並不困難,但只要事先更新套件清單、確認系統環境,就能大幅減少錯誤與安裝上的困擾。對初學者來說,這些準備工作能幫助你更順利地進入後續步驟。
4. 在 Ubuntu 安裝 Java 的方法【基礎篇】
4.1 使用 APT 安裝 OpenJDK 的方法
Ubuntu 的軟體管理系統使用的是 APT(Advanced Package Tool)。由於 OpenJDK 已包含在 Ubuntu 的官方套件庫中,因此可以透過以下指令輕鬆安裝。
安裝 OpenJDK 11(穩定的 LTS 版本)
sudo apt install openjdk-11-jdk
安裝 OpenJDK 17(最新的 LTS 版本)
sudo apt install openjdk-17-jdk
根據你想使用的 Java 版本,請將 openjdk-XX-jdk
中的「XX」替換成相應數字。以 2025 年 4 月為例,11 與 17 為建議使用的長期支援(LTS)版本。
使用 APT 指令時,相關相依套件也會自動安裝,對初學者來說是非常安心又簡單的安裝方式。
4.2 確認 Java 的版本
安裝完成後,請確認 Java 是否能正確運作。請在終端機中輸入以下指令:
java -version
執行結果範例(以 OpenJDK 17 為例):
openjdk version "17.0.9" 2024-10-17
OpenJDK Runtime Environment (build 17.0.9+8-Ubuntu)
OpenJDK 64-Bit Server VM (build 17.0.9+8-Ubuntu, mixed mode, sharing)
如果能看到這樣的版本資訊,就表示 Java 已成功安裝並可正常運行。
4.3 當系統中安裝多個 Java 版本時的注意事項
在 Ubuntu 中可以同時安裝多個版本的 Java,但系統預設使用的版本只能有一個。
若你安裝了多個版本,可使用以下指令選擇要使用的預設版本:
sudo update-alternatives --config java
執行後會顯示可選版本的列表,輸入相對應的編號即可切換預設使用的 Java 版本。
總結:從安裝 OpenJDK 開始你的 Java 之路
如果你想在 Ubuntu 上開始使用 Java,建議先從穩定且安裝簡單的OpenJDK 11 或 17 開始。透過 APT 指令,只需幾分鐘即可完成環境建置。
5. 設定 JAVA_HOME 的方法【環境變數設定】
什麼是 JAVA_HOME?
JAVA_HOME
是一個環境變數,讓使用 Java 的應用程式或工具能正確識別 Java 的安裝位置。
許多開發工具與建構工具(如 Maven、Gradle)都會參考此變數來定位 Java 執行檔路徑。
單純安裝 Java 並不會自動設定這個變數,因此需要手動進行設定。
如何查找 JAVA_HOME 的路徑
首先,我們需要知道 Java 的實際安裝路徑。可以透過以下指令查詢目前使用的 Java 路徑:
readlink -f $(which java)
範例輸出結果如下:
/usr/lib/jvm/java-17-openjdk-amd64/bin/java
這時 JAVA_HOME
的路徑即為上方結果中,去掉 bin/java
後的部分,也就是:
/usr/lib/jvm/java-17-openjdk-amd64
設定 JAVA_HOME 的步驟
要設定環境變數,需要修改 shell 的設定檔。Ubuntu 通常使用的是 ~/.bashrc
或 ~/.bash_profile
(若使用 Zsh,則為 ~/.zshrc
)。
1. 編輯 bashrc 檔案
nano ~/.bashrc
在檔案的最後加上以下內容(請將路徑替換為你實際查到的 Java 路徑):
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
2. 套用變更設定
儲存檔案後,執行下列指令讓變更立即生效:
source ~/.bashrc
確認 JAVA_HOME 是否正確設定
輸入以下指令確認 JAVA_HOME
是否已設定成功:
echo $JAVA_HOME
若顯示出來的路徑與你設定的一致,就表示設定成功。
注意:若使用多個 JDK,需對應切換 JAVA_HOME
當你切換 Java 版本後,JAVA_HOME
的值也需要一併修改為對應的安裝路徑。
可搭配 update-alternatives
指令取得正確的 Java 版本路徑,並重新設定。
總結:JAVA_HOME 是開發環境中不可或缺的設定
JAVA_HOME
是許多 Java 應用與工具運作所需的重要設定。雖然需要手動設置,但只要設定好,未來使用 Java 時會更加穩定與便利。
6. 管理與切換多個 Java 版本的方法
為什麼需要切換不同版本的 Java?
根據不同的開發環境或應用程式,有時只能在特定版本的 Java 下正常運作。
例如,某些軟體只能在 Java 8 上運行,而另一個專案則可能需要 Java 17。
在 Ubuntu 上可以同時安裝多個版本的 Java,並且可依需求隨時切換。
如何切換 Java 的版本?
Ubuntu 提供 update-alternatives
指令,可用來設定預設使用的 Java 版本。
步驟1:安裝多個版本的 Java
首先,請安裝你想切換使用的所有 Java 版本。例如,若要安裝 Java 8 與 Java 17:
sudo apt install openjdk-8-jdk
sudo apt install openjdk-17-jdk
步驟2:使用 update-alternatives 顯示可用版本
接著,使用以下指令查看並選擇要使用的 Java 版本:
sudo update-alternatives --config java
範例執行結果:
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1111 auto mode
1 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java 1081 manual mode
2 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1111 manual mode
Press <enter> to keep the current choice[*], or type selection number:
輸入對應的數字後按下 Enter,即可完成 Java 版本的切換。
切換 javac
(Java 編譯器)也同樣重要
除了 java
指令之外,用來編譯 Java 原始碼的 javac
也需要一併切換。請使用下列指令:
sudo update-alternatives --config javac
切換方式與 java
相同,選擇對應的編號即可。
可能也需要同步修改 JAVA_HOME
切換 Java 版本後,若有設定 JAVA_HOME
環境變數,記得也要改為對應的路徑。
可透過 update-alternatives
確認當前使用的路徑並更新。
常見錯誤與對應處理方式
- 已切換 Java,但在 IDE 中沒有生效:
→ 需在 Eclipse 或 IntelliJ 等 IDE 內手動指定 Java 路徑。 - Java 可以使用,但
javac
無法執行:
→javac
也需要用update-alternatives
個別切換。
總結:彈性切換有助於多專案管理
在 Ubuntu 上可以靈活地管理與切換多個 Java 版本,對於同時處理多個專案或使用不同框架的開發者來說,是非常實用的功能。
7. 常見錯誤與對應的解決方法
錯誤 1:「Unable to locate package openjdk-xx-jdk」
問題描述
當你嘗試使用 APT 安裝 Java 時,可能會出現以下錯誤訊息:
E: Unable to locate package openjdk-17-jdk
可能原因
- 套件清單太舊
- 拼字錯誤(例如
openjdk-17-jdk
打錯成其他拼法) - 你目前的 Ubuntu 版本並不支援該 Java 套件
解決方法
請先執行以下指令,更新套件清單:
sudo apt update
若仍無法安裝,請檢查你是否指定了不支援的 Java 版本。可使用以下指令查看可用的 OpenJDK 列表:
apt search openjdk
錯誤 2:「java: command not found」
問題描述
即使你認為已經安裝 Java,卻出現以下錯誤訊息:
Command 'java' not found, but can be installed with:
sudo apt install default-jre
可能原因
- Java 套件尚未安裝,或安裝失敗
PATH
環境變數未包含 Java 的路徑
解決方法
先確認系統中是否已安裝 Java,若尚未安裝,可執行以下指令:
sudo apt install default-jre
或指定特定版本:
sudo apt install openjdk-17-jdk
安裝後再使用 java -version
來確認是否正常。
錯誤 3:JAVA_HOME
設定了但無法正確使用
問題描述
即使已經設定了環境變數 JAVA_HOME
,使用 echo $JAVA_HOME
卻顯示空白或不正確的路徑。
可能原因
- 你已設定在
.bashrc
中但忘了執行source ~/.bashrc
- 設定內容有錯誤(拼字錯誤、路徑錯誤等)
解決方法
- 重新打開設定檔確認內容:
nano ~/.bashrc
- 修正後套用設定:
source ~/.bashrc
- 再次確認設定是否正確:
echo $JAVA_HOME
錯誤 4:Java 正常,但無法使用 javac
問題描述
可以執行 java
指令,但當你嘗試編譯 Java 檔案時,出現以下錯誤:
Command 'javac' not found
可能原因
- 你只安裝了 JRE(Java 執行環境),而沒有安裝 JDK(開發工具包)
解決方法
請執行以下指令安裝 JDK:
sudo apt install openjdk-17-jdk
接著再確認:
javac -version
錯誤 5:已切換 Java 版本但未生效
問題描述
使用 update-alternatives
切換 Java 版本後,輸入 java -version
卻顯示舊版本。
可能原因
- 切換只套用了
java
,但沒有同步切換javac
JAVA_HOME
仍是舊版本的路徑
解決方法
sudo update-alternatives --config java
sudo update-alternatives --config javac
另外也請記得同步更新 JAVA_HOME
的設定。
總結:遇到錯誤時冷靜分析即可解決
在 Ubuntu 上設定 Java 時,即使遇到錯誤,大部分問題都與環境設定或輸入錯誤有關。只要仔細閱讀錯誤訊息並對照步驟冷靜處理,大多數情況都能順利解決。
建議將本教學加入書籤,方便日後快速查詢。
8. 使用圖形介面(GUI)安裝 Java 的方法【適合初學者】
不擅長終端機操作也沒關係
雖然 Ubuntu 是一款相對友善的 Linux 作業系統,但對某些人來說,「打指令很困難」可能仍是一大障礙。
其實,Ubuntu 提供了只需滑鼠操作即可安裝軟體的圖形化介面(GUI),非常適合初學者使用。
以下將介紹如何使用 Ubuntu 內建的「Ubuntu 軟體中心(Ubuntu Software Center)」來安裝 Java(OpenJDK)。
使用 Ubuntu 軟體安裝 Java 的步驟
步驟 1:開啟 Ubuntu 軟體
- 點選左下角的「活動」或點選側邊欄的「Ubuntu 軟體」圖示。
- 開啟後,點選上方的搜尋圖示(放大鏡標誌)。
步驟 2:搜尋「OpenJDK」
在搜尋欄中輸入 「openjdk」。
稍等片刻,會出現搜尋結果,如「OpenJDK Java Runtime」或「OpenJDK Java Development Kit」等選項。
步驟 3:選擇版本並開始安裝
- 例如選擇「OpenJDK 11 Java Development Kit」等版本。
- 點選進入詳細資訊頁後,按下「安裝」按鈕。
- 系統會要求你輸入密碼,請輸入 Ubuntu 登入密碼並確認。
接著系統就會開始安裝 Java,過程大約只需幾十秒到幾分鐘。
安裝後的確認(可透過 GUI 或簡單指令)
如果你不熟悉終端機操作,也可以用以下方法確認是否安裝成功:
- 開啟「終端機」並輸入
java -version
(這個指令非常簡單,只是查看版本資訊) - 或者直接打開需要 Java 的應用程式(例如 DBeaver 或 Eclipse),確認是否能正常啟動
注意:GUI 可安裝的版本有限
透過 Ubuntu 軟體中心安裝的 Java 套件,可能不是最新版。此外,若你需要同時管理多個版本或進行細部設定,GUI 無法提供完整的控制。
因此,未來若有更進階的需求,仍建議學習使用終端機來進行環境設定。
總結:初學者從 GUI 安裝 Java 就足夠
在 Ubuntu 上,即使不會打指令,也能透過圖形介面輕鬆安裝 Java。對於剛接觸 Linux 的使用者來說是很好的起點。
當你熟悉之後,也可以逐步嘗試終端機操作,打造更靈活的開發環境。
9. Java 開發環境建置【進階加強版】
進行 Java 開發需要哪些工具?
若要進行 Java 開發,通常需要以下幾種工具:
工具類型 | 用途 |
---|---|
JDK(Java 開發工具包) | Java 開發與執行所需的基本環境 |
原始碼編輯器/IDE | 撰寫 Java 程式碼、補完功能、除錯等 |
建構工具(如 Maven 或 Gradle) | 管理專案依賴與自動建構 |
推薦的 Java 開發工具(IDE)3 選【支援 Ubuntu】
1. Eclipse(日蝕)
- Java 開發的經典整合開發環境(IDE)
- 介面穩定簡潔,廣泛被使用多年
- 擁有大量擴充功能,支援 Web、Android、Spring 等開發
安裝方式(使用 Snap):
sudo snap install eclipse --classic
2. IntelliJ IDEA(智慧型 Java IDE)
- 直覺式介面與高效功能,深受歡迎
- Community 版免費,Professional 版為付費(商業用)
- 自動補完、重構、介面設計等功能表現優異
安裝方式(使用 Snap):
sudo snap install intellij-idea-community --classic
3. Visual Studio Code(VS Code)
- 輕量快速的程式碼編輯器(接近 IDE 功能)
- 可透過擴充套件支援 Java 開發
- 適合同時開發多種語言(如 Python、C 語言等)
安裝方式:
sudo snap install code --classic
※安裝完成後,建議額外安裝「Java Extension Pack」等擴充功能,以最佳化 Java 開發體驗。
建構工具安裝(Maven / Gradle)
在 Java 專案中,為了有效管理相依函式庫與建構流程,通常會使用建構工具。以下是兩款主流選項:
安裝 Apache Maven:
sudo apt install maven
安裝 Gradle(部分情況下需較新版本):
sudo apt install gradle
這些工具能幫助你自動化建構、管理依賴、簡化大型專案的維護工作。
總結:Ubuntu 完全可以勝任專業 Java 開發
Ubuntu 系統輕量穩定,與 Java 相容性佳,是非常適合進行開發的作業平台。搭配如 Eclipse、IntelliJ IDEA 等 IDE,以及 Maven、Gradle 等工具,從新手到資深工程師都能輕鬆應對。
如果你希望從「使用 Java」進一步成為「開發 Java 應用程式」的人,建議馬上開始建置你的開發環境吧!
10. 常見問題集(FAQ)
Q1. OpenJDK 和 Oracle JDK,應該選哪一個?
基本上使用 OpenJDK 即可滿足大部分需求。Ubuntu 預設支援 OpenJDK,免費且可用於商業用途。
而Oracle JDK 更適合企業用途,例如需要官方技術支援或額外功能時。不過,商業使用時可能需要額外授權,請特別注意。
Q2. 如何在 Ubuntu 安裝最新版本的 Java?
Ubuntu 的官方套件庫不一定能立即提供最新版本的 Java。如果你需要最新版,可透過以下方式安裝:
- 新增 PPA 套件來源(例如:
sudo add-apt-repository ppa:openjdk-r/ppa
) - 從 Oracle 官方網站下載並手動安裝
不過,若考量穩定性與安全性,建議優先使用 LTS(長期支援)版本,如 OpenJDK 11 或 17。
Q3. 一定要設定 JAVA_HOME 嗎?
如果你只是單純執行 Java 程式,通常不需要設定 JAVA_HOME。
但以下情況會需要設定這個變數:
- 使用開發工具(如 Eclipse、IntelliJ 等)
- 使用建構工具(如 Maven、Gradle)
- 其他需要 Java 的應用程式設定路徑時
若你將來會進行開發相關工作,建議提早設定 JAVA_HOME。
Q4. 如何卸載已安裝的 Java?
如果你是透過 APT 安裝 Java,可以用以下指令卸載:
sudo apt remove openjdk-17-jdk
如果系統中有多個版本,請逐一指定版本名稱來卸載。
完成後,請再輸入 java -version
確認是否已成功移除。
Q5. 切換 Java 版本後沒有生效怎麼辦?
如果你已安裝多個版本,但切換後版本沒變,請確認以下步驟是否完成:
sudo update-alternatives --config java
sudo update-alternatives --config javac
此外,也請別忘了更新 JAVA_HOME
的設定以對應新版本。
Q6. 安裝 Java 時該用 GUI 還是終端機?
如果只是基本環境,使用 GUI(Ubuntu 軟體中心)即可。對不熟悉指令的使用者來說是很方便的選擇。
但若需要管理多版本、設定 JAVA_HOME 或使用開發工具,建議學會使用終端機,能有更高的彈性與控制力。
總結:遇到問題時歡迎回來查找解答
Java 是歷史悠久且資源豐富的語言。本篇教學整理了在 Ubuntu 安裝與使用 Java 時可能遇到的問題與解決方法。
建議將此文章加入書籤,日後如需重裝或除錯時可快速查詢。