1

こんにちは、私は StringUtils.remove メソッドを使用しようとしていますが、以下の例外が発生しています。jar ファイルと StringUtils.lowercase が含まれており、String.countsMatches は動作していますが、削除のみが問題になる可能性はありません

<%@page import="org.apache.commons.lang.StringUtils"%>

これが私がインポートした方法であり、例外は次のとおりです

java.lang.NoSuchMethodError:
org.apache.commons.lang.StringUtils.remove(Ljava/lang/String;Ljava/lang/String;)
Ljava/lang/String;
4

2 に答える 2

2

このremove(String,String)メソッドは、commons-lang のバージョン 2.1 に追加されました。2.0 以前には存在しません。

使用するサーブレット コンテナまたはアプリケーション サーバー (およびそのバージョン) によっては、サーバー クラス パスに古いバージョンの commons-lang が含まれている場合があります。これは、アプリケーションの /lib フォルダーにある commons-lang のコピーの代わりに使用されます。それが問題である場合は、サーバー クラス パスではなく、アプリケーション クラス パスを優先するようにアプリケーションを構成できます。

于 2012-03-31T12:25:29.890 に答える
0

javadoc StringUtils で確認できる限り、2 つの文字列引数を受け入れるメソッド remove があり、3 つの引数を受け入れるメソッドがないためです。

public static String remove(String str,
                            String remove)

http://commons.apache.org/lang/api-2.5/org/apache/commons/lang/StringUtils.htmlを参照してください

StringUtils にはさまざまなバージョンがあるため、開発環境と展開環境で同じバージョンを使用していることを再確認してください。

于 2012-03-28T20:55:52.137 に答える