「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > パッケージとクラスパスの検索

パッケージとクラスパスの検索

2024 年 11 月 8 日に公開
ブラウズ:383

Encontrando Pacotes e CLASSPATH

ディレクトリごとのパッケージのミラーリング:
Java パッケージは、ファイル システム上のディレクトリにマッピングされます。

Java ランタイムがパッケージを検索する 3 つの方法:
現在の作業ディレクトリ: ランタイム システムは、作業ディレクトリを開始点として使用します。パッケージが現在のディレクトリのサブディレクトリにある場合は、見つかります。
CLASSPATH 変数: パッケージ パスを含めるように CLASSPATH 環境変数を構成できます。
-classpath オプション: プログラムのコンパイルおよび実行時にクラスパスを指定するには、java および javac コマンドで -classpath オプションを使用します。

パッケージの例:
パッケージ mypack;

プログラムが mypack パッケージを見つけるには、次の条件のいずれかが true である必要があります:
プログラムは 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/enconrando-pacotes-e-classpath-1aam?1 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3