21

私は自分のソフトウェアをリリースすることを少し試しています (これまでにこれを行ったことはありません)。これまでのところ、mvn release:prepare を実行できました。release:perform を実行していると、次のエラーが発生します。

[情報] [エラー] ゴール org.apache.maven.plugins:maven-deploy-plug の実行に失敗しました
in:2.7: プロジェクト img2stl のデプロイ (デフォルト デプロイ): アーティファクトのデプロイに失敗しました: C
byterenditio との間でアーティファクト nl.byterendition:img2stl:jar:0.9 を転送できませんでした
n-releases (https://localhost:443/svn/repo/releases): ピアが認証されていません ->
【ヘルプ1】

localhost:443 にパスワードで保護されたローカルの svn リポジトリをセットアップしたので、.m2 フォルダーの settings.xml に以下を追加しました。

Edwin Buckの答えを含めるように編集:

<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

    <servers>
        <server>
            <id>byterendition-releases</id>
            <username>username</username>
            <password>password</password>
        </server>
        <server>
            <id>byterendition-snapshots</id>
            <username>username</username>
            <password>password</password>
        </server>
    </servers>
</settings>

これは私のpomの便利なセクションです:

<distributionManagement>
    <repository>
        <id>byterendition-releases</id>
        <url>https://localhost:443/svn/repo/releases</url>
    </repository>
    <snapshotRepository>
        <id>byterendition-snapshots</id>
        <url>https://localhost:443/svn/repo/snapshots</url>
    </snapshotRepository>
</distributionManagement>

maven に svn リポジトリにアクセスさせるにはどうすればよいですか?

Edwin Buck が提案したように、localhost を使用すべきではありませんが、それ以外の方法で動作させることができなかったので、仕事で使用するリモート SVN サーバーを使用してこれを試してみようと思いました。今、私は別のエラーが発生します:

[情報] [エラー] ゴール org.apache.maven.plugins:maven-deploy-plug の実行に失敗しました
in:2.7: プロジェクト img2stl のデプロイ (デフォルト デプロイ): アーティファクトのデプロイに失敗しました: C
byterendit との間でアーティファクト nl.byterendition:img2stl:jar:0.9.5 を転送できませんでした
イオンリリース (https://svn.science.ru.nl/repos/estens/releases/): 転送に失敗しました
fer ファイル: https://svn.science.ru.nl/repos/estens/releases/nl/byterendition/img2s
tl/0.9.5/img2stl-0.9.5.jar. 戻りコード: 409、ReasonPhrase: Conflict。-> [ヘル
p 1]

ここでも、Eclipse からこのリポジトリにアクセスできます。私が間違っていることを誰かが知っていますか?

4

9 に答える 9

69

バージョン 3.0.5 以降、Maven は https 接続で SSL 証明書をチェックします。コマンドラインパラメーターを追加することで、これを一時的に修正できます

-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true

JRE に SSL 証明書をインストールすると、問題が完全に解決されます。

公式ドキュメント: http://maven.apache.org/wagon/wagon-providers/wagon-http/

于 2013-07-18T21:40:20.923 に答える
3

https://github.com/escline/InstallCertは、必要なツールを提供し、リモート証明書をシステム全体の証明書ストアにインポートする方法を段階的に説明しています。

于 2014-05-17T04:51:16.067 に答える
3

のエントリsettings.xmlは のサーバー ID 用ですが、 ID がおよびlocalhostのリポジトリにアクセスしています。byterendition-releasesbyterendition-snapshots

これは、Maven がこれらの 2 つのサーバーの資格情報を認識して関連付けないことを意味します。これは、それらの "ID" が異なるためです。byterendition-releasesとの settings.xml エントリが必要ですbyterendition-snapshots

次のようなエントリを追加した場合

    <server>
        <id>byterendition-releases</id>
        <username>user</username>
        <password>password</password>
    </server>

次に、maven は のユーザー名とパスワードで への https 認証チャレンジに対応しますbyterendition-releasesuserこれpasswordは、 のサーバー資格情報エントリがあるためbyterendition-releasesです。

また、 のエントリを追加するbyterendition-snapshotsか、 と同じサーバー ID を持つように設定する必要がありますbyterendition-releases

--- 更新された質問に遅れないように編集 ---

URLを使用してリポジトリにアクセスしていlocalhostます。リポジトリが実際に同じホスト マシン上にある場合、これは機能する可能性がありますが、機能しない理由は多数あります。

  1. SVN リポジトリはリモート SVN サーバー上にあるため、リモート サーバー以外の場所で開発すると失敗します。
  2. HTTP サーバーは、外部要求を解決する場合とまったく同じ方法で localhost を解決するように構成されていません。

いずれにせよ、localhost はやめましょう。マシンの安定した DNS 名を取得できない場合は、IP アドレスを入力することをお勧めします。SVN サーバーが DHCP 上にある場合は、DynamicDNS を機能させるために時間を投資してください (ただし、実際には、可能であればサーバーの静的 IP を取得する必要があります)。

于 2013-03-28T20:58:38.767 に答える
2

I found that the Java version can make a difference here.

With Maven 3.0.5 I was getting this error with Java 6, but switching to Java 7 (or newer) resolved it for me.

于 2015-07-03T09:42:28.227 に答える
0

OSX Mavericks にアップグレードした後、多くのセキュリティの問題が発生しました

  • Amazon AWS での SSL の問題
  • Maven および Eclipse で認証されていないピア
  • trustAnchors パラメータは空にしないでください

この JAVA アップデートを適用すると、すべての問題が修正されました: http://support.apple.com/kb/DL1572?viewlocale=en_US

于 2013-12-30T21:03:58.227 に答える
0

サーバーに接続するときの SSL の問題のようです。ユーザー名とパスワードのチェックの前かもしれません。

SSL クライアント認証を使用して svn サーバーを構成しましたか? これは、クライアント証明書をサーバーに送信する必要があることを意味します。

于 2013-03-28T21:09:28.347 に答える