Java:ArrayList上的StringUtils.join返回NoSuchMethodError异常

时间:2010-08-04 15:04:21

标签: java arraylist apache-commons

我有一个ArrayList,我想加入','的分隔符, 我在这里读到一些答案,StringUtils.join是一个不错的选择,但问题是,当我尝试加入ArrayList时,我得到以下错误:

java.lang.NoSuchMethodError: org.apache.commons.lang.StringUtils.join(Ljava/util/Collection;C)Ljava/lang/String;

代码:

ArrayList<String> friendsList = new ArrayList<String>();
.
.
.
StringUtils.join(friendsList, ',');

我错过了什么?

当我使用netbeans进行编码时,它不会提醒我这个错误,只有在我尝试编译时才会发生。

5 个答案:

答案 0 :(得分:19)

你有旧版本的commons-lang。获取具有此方法的最新版本。

或者,您可以致电StringUtils.join(friendsList.toArray(), ',')

答案 1 :(得分:2)

“只有在我尝试编译时才会发生。”

这不是编译错误。当调用的方法的签名与类路径中的相关类的签名不匹配时,它是在运行时发生的链接错误。你可能在编译时和运行时有不同的jar(可能是不同的版本)。

答案 2 :(得分:1)

我猜是类路径的问题。

答案 3 :(得分:1)

此方法存在,因为公共语言2.3,检查你的jar。

答案 4 :(得分:1)

我使用2.4.jar。我仍然不得不使用像StringUtils.join这样的东西(friendsList.toArray(),',')来完成它。