Java を使用してプログラムで Maven ローカル リポジトリ メタデータ ファイル (maven-metadata.xml) に格納された Maven アーティファクト (GAV 座標を使用) のタイムスタンプとビルド番号を取得する必要があります。このファイルを単純に解析できることはわかっていますが、それは悪い解決策です。誰にもアイデアはありますか?ありがとうございました。
1 に答える
0
あなたが話しているタイムスタンプは、Maven がスナップショット バージョンを保存する方法の特徴です。
たとえば、アーティファクトのバージョンが 1.0-SNAPSHOT の場合、「インストール」ゴールを呼び出すたびに、タイムスタンプによって参照される一意のアーティファクトが作成されます。概念は、別のビルドがバージョン 1.0-SNAPSHOT を要求することであり、Maven はそのバージョンに一致する最後にビルドされたアーティファクトを返します。
私は Maven コードベースに詳しくありませんが、バージョン、特にスナップショットを解決するコードを調べることをお勧めします。タイムスタンプは取得できる可能性がありますが、それが内部の詳細であっても驚かないでしょう。
最後に、ビルドを Maven リポジトリ マネージャーにプッシュすることを好みます。Nexusは非常に軽量で、ラップトップで問題なく動作します。簡単に言うと、Nexus には、スナップショットのタイムスタンプを含むアーティファクトの詳細を取得するために使用できる REST API があります。
于 2015-01-31T10:18:30.140 に答える