」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 查找包和 CLASSPATH

查找包和 CLASSPATH

發佈於2024-11-08
瀏覽:524

Encontrando Pacotes e CLASSPATH

依目錄鏡像包:
Java 套件對應到檔案系統上的目錄。

Java在運行時尋找套件的三種方式:
目前工作目錄:運行時系統使用工作目錄作為起點。如果包在目前目錄的子目錄中,則會找到它。
CLASSPATH 變數:您可以設定 CLASSPATH 環境變數以包含套件路徑。
-classpath選項:在java和javac指令中使用-classpath選項來指定編譯和執行程式時的類別路徑。

套件範例:
打包 mypack;

要讓程式找到 mypack 包,必須符合下列條件之一:
程式從 mypack 上面的目錄運行。
CLASSPATH 包含 mypack 的路徑。
-classpath選項用來指定mypack的路徑。

組織目錄的建議:
將所有與該套件相關的.java和.class檔案保留在該套件對應的目錄中。
編譯包上方目錄中的檔案。

範例程式碼與執行
目錄結構:

src/
  mypack/
    MyClass.java
  Main.java

  1. 定義套件(mypack/MyClass.java):
package mypack;

public class MyClass {
    public void displayMessage() {
        System.out.println("Pacote mypack encontrado!");
    }
}

  1. 使用套件類別(Main.java):
import mypack.MyClass;  // Importando a classe do pacote mypack

public class Main {
    public static void main(String[] args) {
        MyClass myClass = new MyClass();  // Criando uma instância de MyClass
        myClass.displayMessage();  // Chamando o método
    }
}

編譯執行

  1. 編譯文件 從上面的 mypack 目錄中,使用以下命令進行編譯:
javac mypack/MyClass.java Main.java

  1. 運行程序 從目前工作目錄執行程式或指定 -classpath:
java Main


java -classpath . Main

解釋:
目前工作目錄:如果目前目錄在mypack之上,則會找到該套件。
CLASSPATH:可以設定為包含 mypack 目錄。
-classpath選項:可用來指示執行時mypack的路徑。

程式輸出:

Pacote mypack encontrado!

版本聲明 本文轉載於:https://dev.to/devsjavagirls/encontrando-pacotes-e-classpath-1aam?1如有侵犯,請聯絡[email protected]刪除
最新教學 更多>
  • 如何實時捕獲和流媒體以進行聊天機器人命令執行?
    如何實時捕獲和流媒體以進行聊天機器人命令執行?
    在開發能夠執行命令的chatbots的領域中,實時從命令執行實時捕獲Stdout,一個常見的需求是能夠檢索和顯示標準輸出(stdout)在cath cath cant cant cant cant cant cant cant cant interfaces in Chate cant inter...
    程式設計 發佈於2025-04-18
  • 如何使用PHP從XML文件中有效地檢索屬性值?
    如何使用PHP從XML文件中有效地檢索屬性值?
    從php $xml = simplexml_load_file($file); foreach ($xml->Var[0]->attributes() as $attributeName => $attributeValue) { echo $attributeName,...
    程式設計 發佈於2025-04-18
  • 解決Hibernate“對象引用未保存的臨時實例”錯誤方法
    解決Hibernate“對象引用未保存的臨時實例”錯誤方法
    當實體具有包含尚未保存到數據庫的新實例時,就會出現此錯誤。 Hibernate嘗試在持續存在父對象時自動保存這些新實例,但是如果cascade屬性不能適當設置。解決此問題,您需要指定cascade atteribute interction interclibute。這會告訴Hibernate保存...
    程式設計 發佈於2025-04-18
  • Python不會對超範圍子串切片報錯的原因
    Python不會對超範圍子串切片報錯的原因
    在python中用索引切片範圍:二重性和空序列索引單個元素不同,該元素會引起錯誤,切片在序列的邊界之外沒有。 這種行為源於索引和切片之間的基本差異。索引一個序列,例如“示例” [3],返回一個項目。但是,切片序列(例如“示例” [3:4])返回項目的子序列。 索引不存在的元素時,例如“示例” [9...
    程式設計 發佈於2025-04-18
  • Java中Lambda表達式為何需要“final”或“有效final”變量?
    Java中Lambda表達式為何需要“final”或“有效final”變量?
    Lambda Expressions Require "Final" or "Effectively Final" VariablesThe error message "Variable used in lambda expression shou...
    程式設計 發佈於2025-04-18
  • 如何將MySQL數據庫添加到Visual Studio 2012中的數據源對話框中?
    如何將MySQL數據庫添加到Visual Studio 2012中的數據源對話框中?
    在Visual Studio 2012 儘管已安裝了MySQL Connector v.6.5.4,但無法將MySQL數據庫添加到實體框架的“ DataSource對話框”中。為了解決這一問題,至關重要的是要了解MySQL連接器v.6.5.5及以後的6.6.x版本將提供MySQL的官方Visual...
    程式設計 發佈於2025-04-18
  • 如何在GO編譯器中自定義編譯優化?
    如何在GO編譯器中自定義編譯優化?
    在GO編譯器中自定義編譯優化 GO中的默認編譯過程遵循特定的優化策略。 However, users may need to adjust these optimizations for specific requirements.Optimization Control in Go Compi...
    程式設計 發佈於2025-04-18
  • 從C#正確調用SQL自定義函數(UDF)方法
    從C#正確調用SQL自定義函數(UDF)方法
    在C#中調用SQL定義的SQL定義已定義的函數在使用C#代碼的SQL定義的函數中查詢數據庫。這是您可以從C#代碼中調用名為“ TCUPOM”的T-SQL標量函數的方法: c#代碼: 原始代碼中的錯誤:Setting the CommandType to StoredProcedure when ...
    程式設計 發佈於2025-04-18
  • 如何在Java中正確顯示“ DD/MM/YYYY HH:MM:SS.SS”格式的當前日期和時間?
    如何在Java中正確顯示“ DD/MM/YYYY HH:MM:SS.SS”格式的當前日期和時間?
    如何在“ dd/mm/yyyy hh:mm:mm:ss.ss”格式“ gormat 解決方案:的,請訪問量很大,並應為procectiquiestate的,並在整個代碼上正確格式不多: java.text.simpledateformat; 導入java.util.calendar; 導入java...
    程式設計 發佈於2025-04-18
  • 為什麼HTML無法打印頁碼及解決方案
    為什麼HTML無法打印頁碼及解決方案
    無法在html頁面上打印頁碼? @page規則在@Media內部和外部都無濟於事。 HTML:Customization:@page { margin: 10%; @top-center { font-family: sans-serif; font-weight: ...
    程式設計 發佈於2025-04-18
  • 您如何在Laravel Blade模板中定義變量?
    您如何在Laravel Blade模板中定義變量?
    在Laravel Blade模板中使用Elegance 在blade模板中如何分配變量對於存儲以後使用的數據至關重要。在使用“ {{}}”分配變量的同時,它可能並不總是最優雅的解決方案。 幸運的是,Blade通過@php Directive提供了更優雅的方法: $ old_section =...
    程式設計 發佈於2025-04-18
  • Go模板範圍中如何避免尾隨逗號?
    Go模板範圍中如何避免尾隨逗號?
    在GO的文本模板中的最後一個元素的特殊情況處理處理範圍的最後一個元素時,可能很棘手。以創建類似“(P1,P2,P3)”之類的字符串的任務。如果您使用一個簡單的範圍循環,則最終可能會在末端獲得一個額外的逗號,從而導致“(P1,P2,P3,)”。 來解決此問題,我們可以利用模板範圍的關鍵功能:聲明兩...
    程式設計 發佈於2025-04-18
  • 如何實現文本框自動高度調整?
    如何實現文本框自動高度調整?
    textarea auto height 探索如何自動調整文本核心的高度以匹配其內容的長度,以符合其內容的長度他們包含的文本量。如果文本超過預定義的高度,它將變得無法訪問並需要滾動。 此處提供的解決方案使用純JavaScript根據其實際內容來調整文本方面的高度。定義了一個稱為“ auto_gr...
    程式設計 發佈於2025-04-18
  • Python元類工作原理及類創建與定制
    Python元類工作原理及類創建與定制
    python中的metaclasses是什麼? Metaclasses負責在Python中創建類對象。就像類創建實例一樣,元類也創建類。他們提供了對類創建過程的控制層,允許自定義類行為和屬性。 在Python中理解類作為對象的概念,類是描述用於創建新實例或對象的藍圖的對象。這意味著類本身是使用...
    程式設計 發佈於2025-04-18
  • 如何使用不同數量列的聯合數據庫表?
    如何使用不同數量列的聯合數據庫表?
    合併列數不同的表 當嘗試合併列數不同的數據庫表時,可能會遇到挑戰。一種直接的方法是在列數較少的表中,為缺失的列追加空值。 例如,考慮兩個表,表 A 和表 B,其中表 A 的列數多於表 B。為了合併這些表,同時處理表 B 中缺失的列,請按照以下步驟操作: 確定表 B 中缺失的列,並將它們添加到表的...
    程式設計 發佈於2025-04-18

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3