私はJava 9を初めて使用し、YouTubeでJavaによるモジュラービデオレクチャーを行っていました。彼らは、モジュール化の 3 つの利点について言及しました。
分割パッケージについて私が理解している限りでは、アプリケーションが複数の依存関係に依存しているとしましょう。パッケージ abc.pqr.xyz が 1 つ以上の jar に存在するとします。次に、そのパッケージの一部のクラスが jar1 から使用され、他のクラスが jar2 から使用される可能性があります。これにより、実行時にデバッグが困難な問題が発生する可能性があります。
ビデオは、モジュール化がこの問題を解決すると述べています。しかし、それは私が理解しようとしていることですか?
以下のモジュール情報を持つ test.module1 があるとしましょう -
module test.module1{
exports abc.pqr.xyz;
}
以下のモジュール情報を持つ別のmodule2-
module test.module2{
exports abc.pqr.xyz;
}
ここで、私のアプリケーションで、これらのモジュールの両方の依存関係を追加したとしましょう-
module test.myapp{
requires test.module1;
requires test.module2;
}
ここでも、いくつかのクラスがこれらのモジュールの両方に存在する可能性がある 2 つのモジュール依存関係があります。では、実行時にどのモジュールからクラス定義を取得するかがどのように解決されるのでしょうか? Java 9は分割パッケージの問題をどのように回避しますか?