23

プロジェクトのバージョンがスナップショット/リリースであるかどうかに基づいて、2つの独立したアーティファクトにデプロイするようにMavenのdeploy:fileゴールに何らかの方法で指示することは可能ですか?

バージョンに-SNAPSHOTが付加されていることを示すプロパティ、またはデプロイ先のデフォルトのアーティファクト(バージョン番号に基づいてすでに作成されている)がある可能性があることを期待しています。

2つの異なるプロファイルを使用し、pom.xmlファイルを解析してantのスナップショットかどうかを判断することを考えましたが、可能であれば、よりクリーンなソリューションを使用したいと思います。

現在、私のデプロイプラグインは次のようになっていますが、これはバージョンに関係なくリリースアーティファクトにデプロイするだけです。

<plugin>
   <groupId>org.apache.maven.plugins</groupId>
   <artifactId>maven-deploy-plugin</artifactId>
   <version>2.5</version>
   <executions>
      <execution>
        <id>deploy-zip-created-by-ant-to-artifactory</id>
    <phase>deploy</phase>
    <goals>
       <goal>deploy-file</goal>
    </goals>
    <configuration>
       <repositoryId>${project.distributionManagement.repository.id}</repositoryId>
       <url>${project.distributionManagement.repository.url}</url>
       <file>${project.basedir}/Build/deploy/MyArtifact.zip</file>
       <pomFile>${project.basedir}/MyArtifact-pom.xml</pomFile>
    </configuration>
      </execution>
   </executions>
</plugin>

どうもありがとう

4

4 に答える 4

9

settings.xml内でリポジトリを定義した場合は、

mvn deploy:deploy-file -DrepositoryId=releases -DartifactId=... -Durl=
于 2011-07-29T10:27:57.503 に答える
5

ここでは、 GMavenプラグインを使用してdistributionManagement、POMのセクションからリポジトリを選択し、プロパティに保存しました。

その後、デプロイプラグインはそのプロパティを使用できます。

于 2012-11-30T12:38:45.720 に答える
0

build-helper-maven-pluginを使用して追加のアーティファクトをデプロイしたい場合があります

于 2013-02-04T11:03:38.967 に答える
-3

これはおそらくMavenの方法です。

  <distributionManagement>
    <repository>
      <id>release</id>
      <url>http://my-releases</url>
    </repository>
    <snapshotRepository>
      <id>snapshots</id>
      <url>http://my-snapshots</url>
    </snapshotRepository>
  </distributionManagement>

スナップショットバージョンのデプロイを実行すると、スナップショットリポジトリに移動します。スナップショット以外のリリースの場合、通常のリポジトリが使用されます。

deployを実行するだけで、機能します。:-)

于 2012-06-06T16:40:04.713 に答える