2017-06-28 10 views
0

私はSpringのブート2.0.0M2で遊んでいますが、WebアプリケーションではなくCLIアプリケーションを作成しようとしています。私の問題はspring-boot-starter-webを継承せずにSpring BootでObjectMapperインスタンスを取得するにはどうすればよいですか?

Bean method 'jacksonObjectMapper' not loaded because @ConditionalOnClass did not find required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' 

ので、あなたが春のブートインスタンスを持っており、ジャクソンを設定したいがないときも、私のビルドで

compile 'org.springframework.boot:spring-boot-starter' 
    compile 'org.springframework.boot:spring-boot-starter-json' 

含め、ObjectMapperがベストプラクティスは何ブートによって作成されていないということですWebサーバーを起動しますか?

+0

ジャーを追加できませんか? –

+2

[ObjectMapperをSpringに設定する](https://stackoverflow.com/questions/7854030/configuring-objectmapper-in-spring) – ledniov

+0

と同じですが、Spring Bootは 'ObjectMapper'を自動設定し、いくつかの井戸で調整することができます文書化された構成プロパティー。他の質問として「ObjectMapper」を作成した場合、間違っていなければ、これを手作業で行う必要があります。 – Serandel

答えて

3

あなたは自分で初期化してみませんか?

@Bean 
ObjectMapper objectMapper() { 
    return new ObjectMapper(); 
} 
+0

前のコメントで述べたように、Springブートはいくつかの文書化された構成プロパティを持つ 'ObjectMapper'を自動設定します。私が自分自身でインスタンス化すると、私が間違っていなければ、このチューニングはすべて失われます。 – Serandel

+0

はい、手で行う必要がありますが、それほど難しくはなく、 'Jackson2ObjectMapperBuilder'のソースコードを見ると、デフォルト値を設定していないようです。いくつかのよく知られているモジュールを自動的に検出しますが、手動で追加することはそれほど難しくありません。本当にしたいのであれば、あなたのコードにJavaをコピーすることができます、それはASL2ですが、私は自分のオブジェクトラッパーを使用します。 –

0

org.springframework:spring-web依存関係を追加することができます。そのクラスはその中にあります。

関連する問題