0

現在、私のプロジェクトでは、配布管理を提供することにより、アーティファクトを中央リポジトリにデプロイしています。

私の要件は、pom バージョンが 1.0-SNAPSHOT になったときです。libs-snapshot にデプロイする必要があり、pom バージョンに 1.0 しか含まれていない場合は、libs-release にデプロイする必要があります。

基本的に、スナップショットとそれぞれのリポジトリの有無にかかわらず、私が提供するバージョンに基づいてデプロイする必要があります。

Maven プロジェクトを 2 つの異なるリポジトリにデプロイし、settings.xml で構成するように構成する方法を教えてください。

前もって感謝します

4

1 に答える 1

1

配布管理セクションで 2 つのリポジトリを指定できます。1 つはリリース用、もう 1 つはスナップショット用です。バージョン番号に応じて、対応するリポジトリを配布に使用する必要があります。

この設定は settings.xml では構成できません。pom.xml で構成する必要があります。このリンクを参照してください

<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                      http://maven.apache.org/xsd/maven-4.0.0.xsd">
  ...
  <distributionManagement>
    <repository>
      <uniqueVersion>false</uniqueVersion>
      <id>corp1</id>
      <name>Corporate Repository</name>
      <url>scp://repo/maven2</url>
      <layout>default</layout>
    </repository>
    <snapshotRepository>
      <uniqueVersion>true</uniqueVersion>
      <id>propSnap</id>
      <name>Propellors Snapshots</name>
      <url>sftp://propellers.net/maven</url>
      <layout>legacy</layout>
    </snapshotRepository>
    ...
  </distributionManagement>
  ...
</project>

POM リファレンス - Distribution_Management セクションから抜粋した例で、詳細を確認できます。

複数のプロジェクトの配布管理セクションを共有する場合、この回答は、pom パッケージ化された親プロジェクトを使用して会社全体で指定する方法を示しています。

于 2013-07-05T16:18:37.770 に答える