1
ObjectMapper mapper = new ObjectMapper();
mapper.configure(JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);

コンストラクターの下で intellij からエラーとコンパイラーの警告が表示されます。コンパイルしようとすると、次のように表示されます。

java: no suitable method found for configure(org.codehaus.jackson.JsonParser.Feature,boolean) method


(actual argument org.codehaus.jackson.JsonParser.Feature cannot be converted to com.fasterxml.jackson.core.JsonGenerator.Feature by method invocation conversion)

このメソッドと、正確にこれらのパラメーターを持つコンストラクターも表示され、IntelliSense で使用できます。

誰もこのナンセンスの理由を思いつくことができますか?

助けてくれてありがとう、私は本当に問題が何であるかを理解できないようです。

-アダム

4

1 に答える 1

5

ObjectMapperのドキュメントを見ると、次の型シグネチャで構成メソッドが指定されていることが明確にわかります。

configure(JsonParser.Feature f, boolean state)

ただし、Jackson の 2 つの異なるバージョンを使用しているようです。エラーの2行目に示されているように、1つはcodehausから、もう1つはfasterxmlからのものです。これをテストするか一時的に修正するには、代わりに次のことを試してください。

mapper.configure(com.fasterxml.jackson.core.JsonParser.Feature.ALLOW_UNQUOTED_FIELD_NAMES, true);

または、逆に、他の ObjectMapper をインスタンス化します。

org.codehaus.jackson.map.ObjectMapper mapper = new org.codehaus.jackson.map.ObjectMapper();

編集:明確にするために、両方ではなく、上記のいずれかを実行してください!

于 2013-10-07T23:12:33.690 に答える