Maven を使用して開発した再利用可能なコードがあり、結果のアーティファクトはJARです。
別のプロジェクトで使用するために、この依存関係をそのプロジェクトのPOM.xmlに追加しただけですが、mavenはjarの依存関係を自動検出して含めません。
どうすればこれを行うことができますか?
この点についての指針に感謝します。
依存関係を使用して、開発された (再利用可能な) コードをビルドするようにしてください。これが役立つかどうかはよくわかりませんが (依存関係のあるビルドにも問題がありました)、試してみる価値はあると思います。したがって、これを (再利用可能なプロジェクトの) pom.xml に追加する必要があります。
<build>
...
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>fully.qualified.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
詳細については、この質問とmaven-documenation をご覧ください。
作成したjarのpomファイルを手動で追加することでこれを解決しました。
【ファイル構造】
グループ ID フォルダー
ArtifactIdFolder
バージョンフォルダ
ownjar.jar [作成したアーティファクト]
ownjar.pom [手動で作成したファイル]
次に、.pom ファイルに依存関係を入れます。
<project>
<dependencies>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
</dependencies>
</project>