我正在尝试在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,我不明白为什么我会收到这个错误,我怎么能克服它。
答案 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)
有两件事要解决这个问题:
改变了我的依赖关系。旧的使用了maven 2 repo:
<dependency>
<groupId>couchbase</groupId>
<artifactId>couchbase-client</artifactId>
<version>1.2.3</version>
</dependency>
关注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”中弹出一个显示“目标”的屏幕。它基本上是说我想做一个干净的安装,你想跳过测试。