首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Linux 環境下 Java 套件(Package)入門:從 import 到 CLASSPATH 完整設定指南

     編輯:Java 相關知識

套件基本觀念

Java 套件對應目錄階層,句點 . 代表路徑分隔符 /。例如 import doll.*; 會尋找 ./doll/ 目錄下所有 public 類別。

Ubuntu/OpenJDK 環境的 CLASSPATH 陷阱

若透過 sudo apt-get install openjdk-11-jdk 安裝,系統 不會自動設定 CLASSPATH,導致 import 當前目錄下類別失敗。需手動編輯 ~/.bashrc:

環境變數設定範例(假設 JDK 安裝於 /usr/lib/jvm/java-11-openjdk)

# ~/.bashrc 末尾新增
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin

關鍵點:CLASSPATH 必須包含 .(當前目錄),否則 import doll.*; 找不到本地套件。

修改後執行 source ~/.bashrc 或重新開啟終端機生效。

完整實戰範例

1. 定義套件與類別

// 檔案:doll/Doll.java
package doll;

public class Doll {
    private String name;

    public Doll(String name) {
        this.name = name;
    }

    public void speak() {
        System.out.println(name);
    }
}

2. 主程式引用套件

// 檔案:App.java(置於 doll/ 目錄上層)
import doll.*;

public class App {
    public static void main(String[] args) {
        Doll doll = new Doll("Hello Doll");
        doll.speak();  // 輸出:Hello Doll
    }
}

3. 編譯與執行

# 目錄結構
.
├── App.java
└── doll
    └── Doll.java

# 編譯(自動建立 doll/Doll.class)
javac App.java

# 執行
java App

常見錯誤與排查

錯誤現象原因解決方案
error: package doll does not existCLASSPATH 缺少 . 或目錄結構錯誤檢查 CLASSPATH 含 .;確認 doll/ 在當前目錄
Error: Could not find or load main class App執行時未在 CLASSPATH 根目錄cd 到 App.class 所在目錄執行 java App
class file has wrong versionJDK 版本不匹配(如用 JDK 17 編譯、JRE 11 執行)統一編譯/執行版本,或加 -source -target 參數

進階:模組化專案建議

實務專案建議使用 Maven/Gradle 管理模組與依賴,避免手動維護 CLASSPATH。典型結構:

my-project/
├── pom.xml
├── core-module/
│   └── src/main/java/com/example/core/...
└── app-module/
    └── src/main/java/com/example/app/App.java

Maven 自動處理編譯路徑、模組間依賴、測試編譯等,完全取代手動 javac/java 操作。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved