Java 學習資源浩如煙海,初學者最易陷入「工具收集癖」、「教程囤積癖」、「版本選擇癖」。本文提煉**極簡啟動包**:最小環境、核心工具、權威資源、第一行代碼驗證,讓你在 30 分鐘內跑通閉環,隨後專注於**寫代碼、讀文檔、看源碼**三件核心事。
.msi/.dmg/.tar.gz 安裝包。C:\Program Files\Eclipse Adoptium\jdk-17.x.x-hotspot / Mac: /Library/Java/JavaVirtualMachines/temurin-17.jdk / Linux: /usr/lib/jvm/temurin-17)。
# Windows (系統環境變數)
JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-17.x.x-hotspot
PATH=%JAVA_HOME%\bin;%PATH%
# macOS / Linux (~/.bashrc / ~/.zshrc / /etc/profile)
export JAVA_HOME=/usr/lib/jvm/temurin-17
export PATH=$JAVA_HOME/bin:$PATH
java -version、javac -version、java -XshowSettings:properties -version 2>&1 | grep java.home 確認生效路徑。注意:JDK 9+ **移除 CLASSPATH 環境變數依賴**,模組系統與 --module-path/-cp 參數取代。舊教程要求設定 CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar **已過時,請忽略**。
// Hello.java
public class Hello {
public static void main(String[] args) {
System.out.println("Hello, Java " + System.getProperty("java.version") + "!");
}
}
# 1. 編譯
javac Hello.java # 產生 Hello.class
# 2. 運行
java Hello # 輸出: Hello, Java 17.0.x!
# 3. 打包 JAR (含 MANIFEST.MF Main-Class)
jar cfe hello.jar Hello Hello.class
# 4. 運行 JAR
java -jar hello.jar
# 5. 產生文檔
javadoc -d docs Hello.java
# 打開 docs/index.html 查看
| 工具 | 定位 | 獲取 | 核心優勢 |
|---|---|---|---|
| IntelliJ IDEA Community | 免費全功能 IDE (非 Java EE) | 官網 | 智能提示/重構/偵錯/測試/Maven/Gradle/Git/資料庫/HTTP Client 一體化 |
| VS Code + Extension Pack for Java | 輕量級編輯器 + Java 擴充包 | 官網 + 擴充商店搜尋 | 啟動快、記憶體低、遠程開發 (Remote-SSH/Containers/Wsl) 強、生態豐富 |
| Eclipse IDE for Java Developers | 老牌免費開源 IDE | 官網 | 模組化插件生態、RCP 開發、大型團隊標準化環境 (Oomph) |
建議:新手直接裝 **IDEA Community**,專注學習 Java 語言本身,而非折騰工具配置。
# Maven: 約定大於配置,XML 配置
# 1. 建立標準專案
mvn archetype:generate -DgroupId=com.example -DartifactId=myapp -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
# 2. 編譯/測試/打包
mvn compile test package
# 3. 核心檔案: pom.xml (依賴管理、建構生命週期、插件配置)
核心坐標:groupId:artifactId:version (GAV)。中央倉庫:mvnrepository.com。
| 類別 | 資源 | 用法 |
|---|---|---|
| 官方權威 | Oracle Java 17 Documentation | 語言規範、API 參考、工具指南、教學、遷移指南 — **唯一標準答案** |
| OpenJDK | JDK 開發主線、JEP 提案、郵件列表、原始碼 — **最前沿動態** | |
| JDK Source on GitHub | 線上瀏覽核心類庫源碼 (HashMap, ThreadPoolExecutor, ...) — **最佳教材** | |
| 實戰社群 | Baeldung | Spring、核心 Java、測試、安全、Docker 高質量教程 — **搜尋問題首選** |
| Stack Overflow (java) | 全球最大問答社群 — **報錯訊息貼上去通常有高票答案** | |
| Awesome Java CN | 中文資源精選總表:框架、庫、工具、書籍、教程、面試 — **一站式導航** |
**環境 30 分鐘搞定,工具選一個深用,資源鎖定權威源頭,時間花在寫代碼上。** Java 學習沒有捷徑,但有**最短路徑**:拒絕資訊焦慮,建立最小可行知識閉環,然後在實戰中螺旋上升。下一站:Java 核心 API 深度圖譜 (待續)。