簡體   English   中英

如果CLASSPATH變量為空,如何編譯Java代碼?

[英]How is my Java code compiled if my CLASSPATH variable is empty?

我知道$CLASSPATH包含Java編譯器查找jar文件以使用其類的路徑列表。

當我鍵入: echo $CLASSPATH我得到一個空行,這意味着CLASSPATH為空。

現在,我編寫了以下代碼:

import java.util.ArrayList;

public class Main {

    public static void main(String[] args) {
    ArrayList<String> arrayList = new ArrayList<>();
        arrayList.add("Hello");
        System.out.println(arrayList);        
    }
}

並使用以下命令進行編譯:

javac Main.java

文件編譯成功。 如果CLASSPATH為空,那么Java編譯器如何找到類java.util.ArrayList

從Oracle文檔中:

CLASSPATH變量是一種告訴應用程序(包括JDK工具)在哪里尋找用戶類的方法。 (屬於JRE,JDK平台和擴展名的類應通過其他方式定義,例如引導類路徑或擴展名目錄。)

因此, classpath實際上是針對用戶類的,而ArrayList是JDK的一部分。 也:

類路徑的默認值為“。”,這意味着僅搜索當前目錄。

有關完整說明,請看這里: java path

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM