5

リリースに渡す前に、プロジェクトのすべてのスナップショットの依存関係を変更する必要があります。コマンドラインmvn versions:use -releases から versions:use-releasesを試していますが、うまくいきません。リリースに Nexus リポジトリを使用しており、リリース バージョンは正しくデプロイされ、パブリック アクセスが可能です。

<dependencyManagement>  
 <dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.11</version>
        <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.efx.util</groupId>
      <artifactId>efx-util</artifactId> 
      <version>0.0.1-SNAPSHOT</version>
    </dependency>
  </dependencies>
</dependencyManagement>

mvn versions:use-releases を実行すると、何もしません。

[INFO] ------------------------------------------------------------------------
[INFO] Building efx-clientesocket 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket ---
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building efx-clientesocket-api 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket-api ---
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building efx-clientesocket-impl 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket-impl ---
[INFO] Ignoring reactor dependency: com.efx.clientesocket:efx-clientesocket-api:jar:0.0.1-SNAPSHOT
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building efx-clientesocket-conf 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.2:use-releases (default-cli) @ efx-clientesocket-conf ---
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] efx-clientesocket .................................. SUCCESS [  1.539 s]
[INFO] efx-clientesocket-api .............................. SUCCESS [  0.031 s]
[INFO] efx-clientesocket-impl ............................. SUCCESS [  0.016 s]
[INFO] efx-clientesocket-conf ............................. SUCCESS [  0.015 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

ただし、versions:display-dependency-updates は対応するリリースを検出します

 ------------------------------------------------------------------------
[INFO] Building efx-clientesocket-conf 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.2:display-dependency-updates (default-cli) @ efx-clientesocket-conf ---
[INFO] artifact junit:junit: checking for updates from nexus
[INFO] The following dependencies in Dependency Management have newer versions:
[INFO]   com.efx.util:efx-util ................ 0.0.1-SNAPSHOT -> 1.0.0-RELEASE
[INFO]   junit:junit ............................................. 4.11 -> 4.12
[INFO]
[INFO] ------------------------------------------------------------------------

また、versions:use-last-releases を代替手段として試していますが、問題ありません。この場合、スナップショットなしのバージョンの更新を避けるために -Dincludes= を使用しています。しかし、 versions:use-releasesを使用して、すべてのスナップショット バージョンのみを確実に更新し、プロパティ内のバージョンを一度にカバーしたいと考えています。

私が使用しているMavenのバージョンは3.3.1で、プラグインのバージョンは2.2です

誰かがなぜ機能しないのか考えていますか??

4

1 に答える 1

3

1- versions:use-releases は、リリースされたすべての -SNAPSHOT バージョンを pom で検索し、それらを対応するリリース バージョンに置き換えます。

com.efx.util:efx-util ................ 0.0.1-SNAPSHOT -> 1.0.0-RELEASE 

これはefx-util-0.0.1-SNAPSHOT、対応するリリースefx-util-0.0.1-RELEASEまたはefx-util-0.0.1(0.0.1 のリリース バージョン) が必要であることを意味します。そうでない場合は機能しません。1.0.0-RELEASE対応するリリースではありません

2- versions:use-latest-releases は、新しいリリースであるすべての非スナップショット バージョンを pom で検索し、それらを最新のリリース バージョンに置き換えます。

この場合、(0.0.1-SNAPSHOT) の対応するリリースに限定されません。そのため、リリースのバージョン番号が異なる場合があります (1.0.0-RELEASE)。

お役に立てれば。

于 2016-05-04T11:04:02.103 に答える