0

Javaのインポート/クラスパスの状況がどのように機能するかを理解することに取り組んでいます。コンパイルエラーを発生させたいので、「Java 環境変数をいじってみましょう」と言いました ( JAVA_HOMEbecomeなどを作成するJAV_HOMなど)。

ここに画像の説明を入力 しかし、それはうまくいかないようです。すべてが正常にコンパイルされます。drJava を使用していることは重要ですか? 再起動も試しましたがダメでした。

4

1 に答える 1

1

JAVA_HOME をいじっても、クラスパスが壊れることはまずありません。

JAVA_HOME 環境変数は主に、コード (知る必要がある場合) とサードパーティ ツールに Java インストールの場所を伝えるために使用されます。Java のインストール (javaおよびjavacツールなど) は、これに注意を払いません。これらのコマンドを実行すると、インストールの場所が暗黙的に指定されます。これは、実行している Java ツールの親ディレクトリです。

第二に、見つからない可能性のあるインストール内のもの(「rt.jar」および「tools.jar」ファイルなど) は、実際には通常のクラスパスではなく「ブート クラスパス」にあります。ブートクラスパスは、関連するツールによって暗黙的に形成されます...コマンドラインオプションなどで明示的にオーバーライドしない限り.


drJava がそのクラスパスをどのように管理しているかわかりません。CLASSPATH 環境変数に注意を払うかもしれませんが、それを無視しても驚かないでしょう。(通常、IDE は、プロジェクト構造などに基づいて独自の方法でクラスパスを管理します。)

このような実験を行う場合は、コマンド ラインから実行する方がよいでしょjavajavac。これらのクラスパスは、-jarオプション (および JAR マニフェストの内容)、-cpオプション、またはCLASSPATH環境変数のいずれかによって決定されます。これについては、コマンドのオンライン マニュアルに記載されていますjava

于 2013-05-01T22:55:38.870 に答える