9

mvn リリースを行おうとしていますが、git の問題で失敗します。この問題が発生する前にこれを何度も行ったことがありますが、これがなぜ/どのように起こっているのか本当にわかりません。

最初に mvn release:prepare を実行しましたが、以下に示す最後の行を root-pom に追加することで回避しました。

    <artifactId>maven-release-plugin</artifactId>
    <configuration>
      <preparationGoals>clean install</preparationGoals>
      <pushChanges>false</pushChanges>

しかし、今、mvn release:perform を実行しようとすると、エラー メッセージが再び表示されます。

[INFO] Executing: cmd.exe /X /C "git clone file://C\Users\torbjornk\nfr\MyProject/ C:\Users\torbjornk\nfr\MyProject\target\checkout"
[INFO] Working directory: C:\Users\torbjornk\nfr\MyProject\target
[ERROR] The git-clone command failed.
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE  
[INFO] ------------------------------------------------------------------------
[INFO] Unable to checkout from SCM
Provider message:
The git-clone command failed.
Command output:
fatal: 'C:/Program Files (x86)/Git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

私のgit-installation-folderがgitリポジトリであるはずだという考えがどこにあるのかわかりません! エラーが発生する直前に記録された git clone-command にも、このフォルダーへの参照が含まれていません..

4

3 に答える 3

10

Tobbの優れた元の回答に追加するだけです。
これは修正されましたが、新しいバージョンを機能させるのに問題がありました。たとえば、プラグイン(プロジェクトではなく)の依存関係として追加する必要があります。

<!-- Appengine deploy at end of mvn release:perform -->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <version>2.2.2</version>
    <dependencies>
        <dependency>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-plugin</artifactId>
            <version>1.8.1</version>
        </dependency>
    </dependencies>
</plugin>
于 2012-12-15T02:44:17.430 に答える
3

これは以前に発生したエラーであることが判明しました。これは maven-scm-provider-git のバグによるもので、チェックアウト用のローカル リポジトリへのファイル参照で「C:...」の「:」が失われます。(バグはここで説明されています: http://jira.codehaus.org/browse/SCM-662 )

jar の修正バージョンをローカルの Maven リポジトリにコピーすることでこれを修正しましたが、最近、Nexus リポジトリが正しく動作しているかどうかを確認するためにローカル リポジトリをクリアしたため、ローカル リポジトリに修正されていないバージョンの jar を取得しました。 (や!)

したがって、jar の修正バージョンをローカルの Maven リポジトリに追加し、git clone-command に「:」が再び含まれていると、動作が開始されました :)

編集: このバグは、maven リリース プラグインのバージョン 2.4 で修正されています。

于 2012-12-07T13:44:18.093 に答える
0

それは問題でしょうか

file://C\Users\torbjornk\nfr\MyProject/

? 通常のパスを使用してクローンを作成することはできませんか?

C:\Users\torbjornk\nfr\MyProject/

そうでない場合は、次のようにする必要があります。

file:///C:/Users/torbjornk/nfr/MyProject/

それでもうまくいかない場合は、次のいずれかを試してください。

file://localhost/c|/Users/torbjornk/nfr/MyProject/
file:///c|/Users/torbjornk/nfr/MyProject/
file://localhost/c:/Users/torbjornk/nfr/MyProject/
于 2012-11-30T16:29:24.303 に答える