web-dev-qa-db-ja.com

Confluent Mavenリポジトリが機能していませんか?

Confluentを使用する必要がありますkafka-avro-serializer Mavenアーティファクト。 公式ガイド から、このリポジトリをMaven pomに追加する必要があります

<repository>
  <id>confluent</id>
  <url>http://packages.confluent.io/maven/</url>
</repository>

問題は、URL http://packages.confluent.io/maven/ が以下の応答を受け取ったため、現時点では機能していないように見えることです。

<Error>
  <Code>NoSuchKey</Code>
  <Message>The specified key does not exist.</Message>
  <Key>maven/</Key>
  <RequestId>15E287D11E5D4DFA</RequestId>
  <HostId>
    QVr9lCF0y3SrQoa1Z0jDWtmxD3eJz1gAEdivauojVJ+Bexb2gB6JsMpnXc+JjF95i082hgSLJSM=
  </HostId>
</Error>

実際、Mavenはアーティファクトを見つけられません

<dependency>
  <groupId>io.confluent</groupId>
  <artifactId>kafka-avro-serializer</artifactId>
  <version>3.1.1</version>
</dependency>

問題が何であるかを知っていますか?ありがとうございました

17
gvdm

直接アクセスするとダウンロードできるため、このファイルは使用可能です。 http://packages.confluent.io/maven/io/confluent/kafka-avro-serializer/3.1.1/kafka-avro -serializer-3.1.1.jar

キャッシュファイルのダウンロードを強制するには、mavenコマンドに-Uフラグを追加してみてください。

リポジトリのルートは参照可能ではないため、 http://packages.confluent.io/maven/ にアクセスするとメッセージが表示されます。

16
Kevin

あなたと同じように、私は会社のリポジトリ(Sonatype Nexus)を使用していますが、コンフルエントのリポジトリをプロキシできませんでした。

次に、maven settings.xmlを変更して、ミラーリポジトリからのコンフルエントを除外しました。

    <mirrors>
        <mirror>
            <id>nexus</id>
            <mirrorOf>*,!confluent</mirrorOf> <!-- mirror anything but confluent as Nexus cannot proxy it -->
            <url>repository.company.local/nexus/content/groups/public</url>
        </mirror>
    </mirrors>
    ...
        <repositories>
            ...
            <repository>
                <id>confluent</id>
                <url>http://packages.confluent.io/maven/</url>
            </repository>
        </repositories>

このように、アーティファクトの解決は、コンフルエントのアーティファクトに対しても機能します。

リポジトリをプロキシするほどきれいではありませんが、少なくとも各依存関係を手動でダウンロードして登録するより面倒ではありません。

7
Ghurdyl

ArtifactoryをConfluent Mavenリポジトリに接続しようとする場合、ArtifactoryのレポURLをhttp://packages.confluent.io/mavenまたはhttps://packages.confluent.io/maven(両方のスキームがうまくいくようです)。紛らわしい部分は、ArtifactoryにそのURLをテストするように依頼すると、「入力はnullではない可能性があります」というメッセージで失敗することです。 Artifactoryでリポジトリを参照することもできません。ただし、これらの問題に関係なく、クライアントが要求したときにアーティファクトがダウンロードおよびキャッシュされます。

4
rndgstn

Maven設定ファイルにミラーを追加して、リポジトリ構成とともにコンフルエントリポジトリからjarを取得できます。必要な変更は、settings.xmlにミラーを追加することです

   <mirror>
      <id>confluent</id>
      <mirrorOf>confluent</mirrorOf>
      <name>Nexus public mirror</name>
      <url>http://packages.confluent.io/maven/</url>
</mirror>

Maven設定のリポジトリセクションにこれを追加します

<repository>
          <id>confluent</id>
          <url>http://packages.confluent.io/maven/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
</repository>
1
Pradeep S