待望のSpringBoot2.0がリリースされました。 ので早速バージョンアップだー。
やったことといえば、 build.gradle
のビルドスクリプトプラグインのバージョンアップだけ。
Spring Boot Gradle Plugin Reference Guide に書いてる通りですね。
- id 'org.springframework.boot' version '1.5.10.RELEASE' + id 'org.springframework.boot' version '2.0.0.RELEASE'
そしたら java
と io.spring.dependency-management
が外れるので、追加。
+ apply plugin: 'java' + apply plugin: 'io.spring.dependency-management'
対象のプロジェクトは spring-boot-starter
を使ってるだけのやつで、超シンプルなやつなのでこれだけで完了しました。
application.properties
にSpringBootのことは書いてなかったんで、そっちがどう変わったかはみてないです。とりあえず軒並みキーは変えなきゃいけないはず。
SpringFrameworkも4から5に上がるわけだけど、コンパイルエラーとかにもなんない。流石にこう言うところは安定してるなー。
変わってたとこ
なんかあったらメモがてら実装してこーかと思って。
application.properties
の空白文字の扱いが変わってた。
プロパティファイルの空白ってどう言う扱いなんだっけなと軽く探してみてみたけど、
Properties (Java Platform SE 8) くらいしか見つけられず。
そもそも Properties#load
で読むのと SpringBoot1.5で application.properties
を読むのとでも違うので、まあ、うん。
とりあえず application.properties
で値に空白文字(スペースやタブ)を使用してたら、 String#trim
されるんで消えちゃいます。
これは新しいプロパティを読むクラスで実装されてるので、 PropertyPlaceholderConfigurer. setTrimValues(false)
とかしてみても意味ないです。
ちなみにapplication.properties
ではなく、コマンドライン引数とか application.yml
とか、他の手段で設定すれば特に関係ない話です。
どうしても application.properties
でないとダメなんだーとかでもなければそちらで対応できるやつです。
もともとが正しいとも言いづらい(IDEが警告だすような記述なわけだし)ものなんで、仕様外の話かなーと。