この質問で言及されている状況があります。
親プロジェクト P と 2 つのサブモジュール A および B を持つマルチモジュール Maven プロジェクトがあります。サブモジュールとして A しかない場合は正常に機能しました。メイン プロジェクトに新しいソース フォルダーを追加し、パッケージを作成し、クラスを追加しました (ここで何か間違ったことをしていますか?)。それをモジュール B と呼びましょう。パッケージ B のクラスをパッケージ A のクラスにインポートしますが、 AのpomはBを依存関係として含めるように更新されないため、親プロジェクトをmvnコンパイルしようとすると、未定義のシンボルBというエラーが発生します。
- プロジェクト B を間違って追加していますか? ポンが入ってないから?
- 参照されている質問に記載されているように、メイン プロジェクトの pom ファイルに B を依存関係として追加するにはどうすればよいですか?
編集:pomsとコードの追加
これがプロジェクトAのポンです
<dependencies>
<dependency>
<groupId>javax.slee</groupId>
<artifactId>jain-slee</artifactId>
</dependency>
<dependency>
<groupId>org.mobicents.servers.jainslee.core</groupId>
<artifactId>fault-tolerant-ra-api</artifactId>
<version>2.6.0.FINAL</version>
</dependency>
<dependency>
<groupId>org.mobicents</groupId>
<artifactId>hello-slee-world-sbb</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
現在、Bの依存関係が言及されています。プロジェクトAのBの参照は次のとおりです。
import BPackage.*;
これが、A で B を使用した方法です。
BPackage には BClass という名前のクラスが 1 つだけあります。今、パッケージを間違って追加していないかどうかを尋ねています。つまり、何かを追加する必要がありますか? そのpomが作成され、その依存関係がAに追加されるようにします.
さらに、親をコンパイルするときに B と A の両方をビルドしたいので、その場合、親の pom にも A を追加する必要があると思います。これが親のポンです
<modules>
<module>sbb</module>
<module>customRAType-ratype</module>
<module>customAdaptor-ra</module>
<module>du</module>
</modules>
customAdaptor-ra はプロジェクト A