問題タブ [maven-bom]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
222 参照

maven - クラスローダーのリークを回避するためのベスト プラクティスを構築する - OutOfMemoryError: PermGen space

ここで OutOfMemoryError: PermGen space に関する投稿を読んでいました。ここで特に注目したのがこれ。「java.lang.OutOfMemoryError: PermGen space」エラーの処理

また、この同じ投稿は他の Web 参照について言及しています

私が理解している限り、ClassLoader リークは、場合によっては、App ClassLoader の外部から参照されている App ClassLoader 内に存在するクラスを持つ展開に関連付けられています。この投稿のリンクは、カスタム ログ レベルの例を示しています。

私の疑問は、ビルドと依存関係管理のベストプラクティスについてです。Maven と Bill of Materials を依存関係分析と共に使用して、必要以上のパッケージが生成されていないかどうかを確認します。ここまでは順調ですね。しかし、クラスローダーの優先順位があることは知っています。私の場合、UnifiedClassLoader を使用する JBoss AS / WildFly を使用します。

その場合、Maven と BOM でビルドされた WAR ファイルがロガーの例と同じ動作をする可能性があることを考慮する必要がありますか? BOM の使用は引き続き推奨されますか?

0 投票する
1 に答える
556 参照

maven - Wildfly 9.0.2.Final BOM はどこにありますか?

これにより以下が構築されます。

しかし、そうではありません:

org.wildfly.bom:jboss-javaee-7.0-with-hibernate:9.0.2.Finalが見つかりません。

Wildfly 9.0.2.Final の BOM はどこにありますか?

または、存在しない場合、Wildfly 9 がそれほど新しくないのはなぜですか? WildFly 10 はすでにあります。

0 投票する
0 に答える
655 参照

maven - maven が SNAPSHOT bom ファイルをリリースしないようにするにはどうすればよいですか?

BOM は依存関係のインクルードとして使用されますが、SNAPSHOT バージョンのチェックは、この BOM がインクルードされた後にのみ行われるようです。BOM に SNAPSHOT が記載されていない場合は、それ自体が SNAPSHOT バージョンである可能性があります。問題は、リリース後、BOM のこの SNAPSHOT がリリースされないことです。

ご覧のとおり、このバージョンは SNAPSHOT bom で maven central にリリースされました。

http://search.maven.org/#artifactdetails%7Cnet.openhft%7Cchronicle-bytes%7C1.5.0%7Cbundle

BOM がリリース バージョンであることを確認するプラグインはありますか?

bomdependencyManagement の SNAPSHOT 依存関係について報告されたバグがありましたが、インポートされたもの自体が SNAPSHOT にある場合はカバーされません。さらに、これらのバグは何年も前に解決されていますが、この問題は最新のリリースで発生します。


編集: をに更新した後maven-release-plugin、私たちのバージョンで2.5.3まだ実行できますrelease:prepareSNAPSHOTbom

0 投票する
3 に答える
11205 参照

java - Maven には依存バージョンをプロパティとして取得する方法がありますか?

BOM を使用して別のプロジェクトから依存関係をインポートしていますが、その BOM で既に宣言されている依存関係のバージョンを参照する方法が必要です。これまで、依存関係のバージョンを BOM のプロパティとしてリストしようとしましたが、プロパティは BOM でインポートされないため、このアプローチは失敗します。

Dependency Plugin のdependency:propertiesゴールが必要なことをほぼ正確に実行する場所を見てきましたが、アーティファクトの完全なパスを提供する代わりに、プロパティとしてバージョンが必要です。解決されたアーティファクトのバージョンをプロパティとして提供できるものはありますか?

更新 - 「親ポンを使用しないのはなぜですか?」

私は通常、提供される依存関係が BOM アーティファクトで指定されているアプリケーション サーバー環境で作業していることに気づきます (これは、相互に関連するアーティファクトのグループ、つまりwidlflyを配布するためのやや一般的/標準的な方法になっているようです)。そのため、私は BOM を信頼できる唯一の情報源として扱いたいと考えています。BOM で既に定義されている依存関係のバージョン プロパティを再宣言するようなことを行うという考えは、正しくないようです。

アプリケーション サーバーの環境を反映する親 pom でプロパティを定義する場合、親 pom プロパティと BOM プロパティの同期を維持することを心配する必要があります。なぜその時点で BOM があるのでしょうか?

情報は依存関係ツリーで既に利用可能です。それを公開するだけです...

0 投票する
1 に答える
961 参照

spring-boot - Maven 依存バージョンの競合: Spring データ Neo4j と Spring データ JPA を使用するアプリケーション

これが私の pom.xml の依存関係です。

および他の多くの依存関係

私のアプリケーションは、トランザクション データ ストレージにインメモリ ダービー (組み込みプロファイル)/MySQL(リモート プロファイル) を使用し、Neo4j グラフ データベースを使用して階層データ ストレージを処理します。私の要件は、Maven プロファイルに基づいてリモート モードと組み込みモードの両方で Neo4j を実行することです。デフォルトでは、Spring バージョン マネージャーは古いバージョンの Spring-data-neo4j (3.xx) を使用しますが、組み込みの Neo4j サポートはリリース 4.0.0 以降でのみ使用できます。上記の構成でアプリケーションをビルドすると、次のようなエラーが発生します。

このエラーは、Spring-data-commons のバージョンが競合しているためだと思います。このエラーを回避する方法はありますか?

0 投票する
1 に答える
667 参照

maven - モジュール間で使用している BOM のバージョンを設定する方法はありますか?

同じ bom を使用する多くのモジュールがあります。

それらをすべて最新 (または特定の) バージョンにロールアップするツールはありますか?

リリースで SNAPSHOT bom が使用されないようにする方法はありますか?

0 投票する
0 に答える
455 参照

maven - bom による推移的な依存関係

spring-boot プロジェクトである P1 という名前のプロジェクトがあります。pom には既に親 pom があるので、bom で springboot を使用することにしました。

その後、このプロジェクトは P1.jar としてデプロイされます

次に、P2 という名前の 2 番目のプロジェクトがあります。このプロジェクトには、P1 プロジェクトである依存関係が 1 つだけあります。

両方のプロジェクトの mvn dependency:tree の抜粋を次に示します。

P1:

P2:

ご覧のとおり、spring-orm の依存関係が異なります。誰かがこれがどのように機能するか、どうすれば修正できるかを説明できますか?

現時点では、2 番目のプロジェクトに BOM を追加しました。しかし、それは私の目標ではありません。P1 プロジェクトをその REAL 依存関係と共にインポートできるようにしたいのですが、他に何もする必要も、プロジェクトが使用している BOM を知る必要もありません。