5

Nexus で既に公開されているバージョンに 2 つの zip を追加したいと考えています。
基本的に、これらは圧縮されたアプリケーションのデモと、圧縮された同じアプリケーションの拡張バージョンです。

Deploy プラグインを使用して、pom でファイルごとに 1 つずつ、2 つの実行を定義し、それらをデプロイ フェーズにバインドしました。デモ用のものは次のとおりです。

<execution>
   <id>deploy-essential</id>
      <phase>deploy</phase>
      <goals>
         <goal>deploy-file</goal>
      </goals>
      <configuration>
         <file>${project.build.directory}/${project.artifactId}-${project.version}-demo.zip</file>
         <groupId>${project.groupId}</groupId>
         <artifactId>myproject</artifactId>
         <version>${project.version}</version>
         <classifier>demo</classifier>
         <repositoryId>nexus</repositoryId>
         <url>${targetrepository}</url>
         <generatePom>false</generatePom>
      </configuration>
   </execution>

この実行時に、Maven がファイルをアップロードし、指定された G/A/V 座標にメタデータを更新することを期待していました。ただし、代わりに、指定されたファイルとフルバージョンを含む姉妹ファイルを指定された座標にアップロードしてから、両方を元の座標に再度アップロードします。

次に、2 回目の実行でこれらすべてを再度実行します。これが私のログからの抜粋です:

[INFO] --- maven-deploy-plugin:2.7:deploy-file (deploy-demo) @ bundle ---
Downloading: http://nexus/repositories/snapshots/mygroup/myproject/1.2.6-SNAPSHOT/maven-metadata.xml
2 KB   

Downloaded: http://nexus/repositories/snapshots/mygroup/myproject/1.2.6-SNAPSHOT/maven-metadata.xml (2 KB at 4.8 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/myproject/1.2.6-SNAPSHOT/myproject-1.2.6-20121130.102624-5-demo.zip
...           
Uploaded: http://nexus/repositories/snapshots/mygroup/myproject/1.2.6-SNAPSHOT/myproject-1.2.6-20121130.102624-5-demo.zip (13032 KB at 23105.2 KB/sec)
Downloading: http://nexus/repositories/snapshots/mygroup/myproject/maven-metadata.xml
533 B      

Downloaded: http://nexus/repositories/snapshots/mygroup/myproject/maven-metadata.xml (533 B at 34.7 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/myproject/1.2.6-SNAPSHOT/maven-metadata.xml
2 KB    

Uploaded: http://nexus/repositories/snapshots/mygroup/myproject/1.2.6-SNAPSHOT/maven-metadata.xml (2 KB at 89.4 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/myproject/maven-metadata.xml
533 B   

Uploaded: http://nexus/repositories/snapshots/mygroup/myproject/maven-metadata.xml (533 B at 32.5 KB/sec)
Downloading: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/maven-metadata.xml
861 B   

Downloaded: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/maven-metadata.xml (861 B at 3.8 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/bundle-1.2.6-20121130.102625-3-full.zip
...           
Uploaded: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/bundle-1.2.6-20121130.102625-3-full.zip (13065 KB at 18531.7 KB/sec)
Downloading: http://nexus/repositories/snapshots/mygroup/bundle/maven-metadata.xml
410 B      

Downloaded: http://nexus/repositories/snapshots/mygroup/bundle/maven-metadata.xml (410 B at 8.5 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/maven-metadata.xml
861 B   

Uploaded: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/maven-metadata.xml (861 B at 27.1 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/bundle/maven-metadata.xml
410 B   

Uploaded: http://nexus/repositories/snapshots/mygroup/bundle/maven-metadata.xml (410 B at 5.1 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/bundle-1.2.6-20121130.102625-3-demo.zip
...           
Uploaded: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/bundle-1.2.6-20121130.102625-3-demo.zip (13032 KB at 13631.1 KB/sec)
Uploading: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/maven-metadata.xml
861 B      

Uploaded: http://nexus/repositories/snapshots/mygroup/bundle/1.2.6-SNAPSHOT/maven-metadata.xml (861 B at 56.1 KB/sec)

これは SNAPSHOT にとって大きな問題ではありませんが、Nexus は再展開を拒否するように構成されているため、リリースが完全にブロックされます。

この動作は意図したものではないと思います。何かが足りないと確信しています。実際に構成したファイルのみを Maven にアップロードさせることはできますか?

4

3 に答える 3

2

デフォルトのデプロイ メカニズムを無効にしていないため、まだ実行中です。次のようなものが必要です。

        <plugin>
            <artifactId>maven-deploy-plugin</artifactId>
            <executions>
                <!-- disable standard deploy -->
                <execution>
                    <id>default-deploy</id>
                    <phase>none</phase>
                </execution>
                <execution>
                    <id>deployEssential</id>
                    <phase>deploy</phase>
                    ...
                </execution>
            </executions>
        </plugin>
于 2014-02-03T14:24:25.017 に答える
2

組み込みのデプロイ プラグイン (Maven アーティファクトのデプロイ用) を使用する代わりの方法:

  • 組み込みの展開メカニズムを無効にする
  • wagon-maven-pluginデプロイ フェーズを有効にする
  • FTP資格証明をに追加しますHOME/.m2/settings.xml
  • 実行mvn deployしてFTPファイルをコピー

<!-- disable standard deploy -->
<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-deploy-plugin</artifactId>
  <version>3.0.0-M1</version>
  <executions>
    <execution>
      <id>default-deploy</id>
      <phase>none</phase>
    </execution>
  </executions>
</plugin>
<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>wagon-maven-plugin</artifactId>
  <version>1.0</version>
  <executions>
    <execution>
      <id>deploy-release</id>
      <phase>deploy</phase>
      <goals>
        <goal>upload</goal>
      </goals>
      <configuration>
        <serverId>nexus</serverId>
        <url>${targetrepository}</url>
        <fromDir>${project.build.directory}</fromDir>
        <toDir>${project.version}</toDir>
        <includes>${project.artifactId}-${project.version}-demo.zip</includes>
      </configuration>
    </execution>
  </executions>
</plugin>
于 2016-05-31T18:08:58.180 に答える
1

現在のデプロイメントにアーティファクトをアタッチできるアセンブリ プラグインを使用したり、ビルドに他のアーティファクトを簡単にアタッチできる build-helper-maven-plugin を使用したりしないでください。通常のビルド中に deploy プラグインを使用するのは間違った方法です。

于 2012-11-30T13:04:48.790 に答える