SpringBoot 2.3以降でjavax.validationのimportができない
Spring解体新書をベースにSpringBootに挑戦中
Spring解体新書
私はSIerにいるのにJavaを使ったことがない。
ということで、Spring解体新書という書籍に沿ってSpring BootでWebアプリケーション開発のさわりをやってみる。
実行環境
この書籍ではEclipseを使っているが、私は前回の記事Javaを知らない俺がモダンなJava開発をめざすで用意した環境で実施することにした。
具体的には、以下。
1章〜5章
環境構築以外は特に問題なく、実施していくだけ。
第6章
気になったところを記載していく。
jQueryとbootstrapのバージョンは合わせる
Java以外の部分は面倒かつ非本質的と感じ、HTMLファイルはサンプルコードコピペで済ませていたので、あとになって気付いた。
HTMLのheaderにおいてバージョン固定でjQuery等を呼び出しているので、これらのライブラリは書籍と同じ古いバージョンを入れておいたほうがよさそう。
誤字
SignupController.java
内のMarriage
がMarrige
の誤字あり。同様にしてsignup.html
にも誤字あり。
javax.validation
がimportできない
ちょっと困ったところ。
どうもSpring Bootが2.3
以降のバージョンだとjavax.validation
が含まれていないらしい(公式リリースノート)。
対策として、build.gradle
のdependencies
に以下を追記する。
implementation 'org.springframework.boot:spring-boot-starter-validation'
Mavenの場合は以下。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
また、追記したあとはReloadが必要なため、
View
> Tool Windows
> Gradle
で開いた画面で更新ボタン(Reload All Gradle Projects
)を押下する。
ここまで実施すると無事にimportが通るようになる。
おわりに
また何か書籍通りにいかないポイントがあれば記事にしようと思う。