在Eclipse中使用Maven构建ZooKeeper环境失败求助
解决Maven无法下载curator-client依赖的问题
首先,先帮你拆解下这个错误提示的意思:Maven之前尝试从中央仓库下载org.apache.curator:curator-client:jar:4.0.0时失败了,它把这个失败结果缓存到了本地仓库里。默认情况下,Maven在一段时间内(中央仓库的更新间隔)不会再尝试重新下载这个依赖,除非你强制它更新。
下面是几个可行的解决办法:
方法一:强制Maven更新依赖
在Eclipse里操作很简单:
- 右键你的项目,选择「Run As」→「Maven Build...」
- 在弹出的窗口里,「Goals」输入框中填入
clean install -U - 点击「Run」执行,
-U参数会让Maven忽略本地缓存的失败状态,强制重新从仓库拉取所有依赖
方法二:手动清理本地缓存目录
如果强制更新还是不行,可以手动删掉本地仓库里缓存的失败依赖:
- 找到你的本地Maven仓库路径(默认是用户目录下的
.m2/repository) - 定位到
org/apache/curator/curator-client/4.0.0这个目录,把整个4.0.0文件夹删掉 - 回到Eclipse,右键项目→「Maven」→「Update Project...」,勾选「Force Update of Snapshots/Releases」,然后点击「OK」让Maven重新下载
额外提示:检查版本兼容性
看你的pom.xml里,ZooKeeper用的是3.4.6,但Curator 4.0.0实际上是和ZooKeeper 3.5.x及以上版本兼容的,版本不匹配可能也会导致依赖下载或者后续运行出现问题。建议你调整Curator的版本,比如换成2.12.0(这个版本完美兼容ZK 3.4.6),修改后的依赖如下:
<dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>2.12.0</version> </dependency> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-recipes</artifactId> <version>2.12.0</version> </dependency> <dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-client</artifactId> <version>2.12.0</version> </dependency>
调整版本后再执行前面的强制更新操作,应该就能解决问题了。
内容的提问来源于stack exchange,提问作者arsonal I
相关产品推荐
相关产品推荐

