couchbase java client 1.2。*因maven依赖而失败

时间:2013-12-11 15:24:42

标签: java maven couchbase

我正在尝试在this tutorial之后创建一个基本的java-couchbase hello world应用程序。

在我的pom.xml中添加了以下依赖项:

<dependencies>
    <dependency>
        <groupId>couchbase</groupId>
        <artifactId>couchbase-client</artifactId>
        <version>1.2.1</version>
    </dependency>
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.2.2</version>
    </dependency>
    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>6.0</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

但是我的pom.xml中出现了这个错误:

ArtifactDescriptorException: Failed to read artifact descriptor for
couchbase:couchbase-client:jar:1.2.1: ArtifactResolutionException: 
Failure to transfer couchbase:couchbase-client:pom:1.2.1 from 
http://repo.maven.apache.org/maven2 was cached in the local 
repository, resolution will not be reattempted until the update interval 
of central has elapsed or updates are forced. Original error: Could 
not transfer artifact couchbase:couchbase-client:pom:1.2.1 from/to 
central (http://repo.maven.apache.org/maven2): null to 
http://repo.maven.apache.org/maven2/couchbase/couchbase-client/1.2.1/couchbase-client-1.2.1.pom

我可以看到罐子存在in maven central distribution,我不明白为什么我会收到这个错误,我怎么能克服它。

3 个答案:

答案 0 :(得分:4)

该错误非常简单:

Failure to transfer couchbase:couchbase-client:pom:1.2.1 from 
http://repo.maven.apache.org/maven2 was cached in the local repository

然后它说明应该采取什么措施来解决问题:

resolution will not be reattempted until the update interval of central has 
elapsed or updates are forced. 

FORCE更新,请使用参数-U

 -U,--update-snapshots    Forces a check for updated
                          releases and snapshots on remote
                          repositories

来自mvn --help选项。

答案 1 :(得分:2)

有两件事要解决这个问题:

  1. 从我的maven settings.xml文件中注释掉代理部分(在this thread之后)。
  2. 改变了我的依赖关系。旧的使用了maven 2 repo:

    <dependency>
        <groupId>couchbase</groupId>
        <artifactId>couchbase-client</artifactId>
        <version>1.2.3</version>
    </dependency>
    
  3. 关注this link后,将其替换为:

        <dependency>
            <groupId>com.couchbase.client</groupId>
            <artifactId>couchbase-client</artifactId>
            <version>1.2.3</version>
        </dependency>
    

答案 2 :(得分:0)

点击你的项目。

右键单击&gt;团队&gt;与存储库同步。

这应该会同步。

如果这不起作用 右键单击&gt;运行方式&gt; Maven Build。如果它在“clean install -DskipTests = true”中弹出一个显示“目标”的屏幕。它基本上是说我想做一个干净的安装,你想跳过测试。