1

libosm-2.5.2-RC1 ライブラリを使用する Maven プロジェクトがあります。このライブラリには浸透ライブラリが含まれています。Osmosis ライブラリは、libosm がダウンロードされた時点で libosm ライブラリの jar ファイルに既にパックされています。問題は、この osmosis ライブラリが古く、現在の OSM データで動作しないことです。Maven では、osmosis の新しいバージョンを依存関係として追加できます。それを libosm ライブラリより前に POM ファイルに入れると、新しい osmosis の新しいクラスが使用されます。ただし、プロジェクトをビルドすると、両方のライブラリが lib フォルダーに含まれます。デプロイ後、Tomcat サーバーは libosm にパックされている古い osmosis を使用します。

私が達成したいのは、libosm ライブラリを使用することですが、libosm と新しい浸透ライブラリの両方にあるクラスがある場合は、新しい浸透ライブラリのクラスを使用したいと考えています。

有効な解決策の 1 つは、libosm の jar ファイルを手動で解凍し、古い osmosis クラスを新しいクラスで書き換えることです。しかし、プロジェクトを共有したいのですが、他の人が作成した更新されたjar libosmファイルを手動で追加するのは快適ではないため、mavenで同じことを達成したいと思います。

4

1 に答える 1

0

libosm-2.5.2-RC1 のクラスが不要で、この jar の一部として不要なパッケージ/クラスがわかっている場合は、 maven-jar-plugin のパッケージ フェーズでそれらを取り除くことができます。 . このリンクは、その方法を示しています。これが役立つかどうか教えてください。http://maven.40175.n5.nabble.com/Exclusive-packages-and-classes-from-jar-td106688.html

于 2013-05-29T00:18:34.110 に答える