使用 com.google.common.base.Splitter 时出现 NoSuchMethodError 异常

新手上路,请多包涵

我正在尝试使用 com.google.common.base.Splitter 如下

Iterable<String> segs = Splitter.on("/").split("one/two/three/four/five");

for (String seg : segs) {
  System.out.println(seg);
}

但是,我看到以下异常:

 Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Platform.precomputeCharMatcher(Lcom/google/common/base/CharMatcher;)Lcom/google/common/base/CharMatcher;
    at com.google.common.base.CharMatcher.precomputed(CharMatcher.java:664)
    at com.google.common.base.CharMatcher.<clinit>(CharMatcher.java:71)
    at com.google.common.base.Splitter.<init>(Splitter.java:107)
    at com.google.common.base.Splitter.on(Splitter.java:171)
    at Test.main(Test.java:30)

有谁知道我在这里做错了什么?

原文由 mip 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.4k
1 个回答

我遇到了同样的问题。原来我用的是老版本的guava。转到此网站: https ://code.google.com/p/guava-libraries/,并下载更新的版本。

顺便说一下,google-collections 被重命名为 Guava。

原文由 Sam003 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题