如果您在Spring Boot应用程序中使用验证约束,并且刚刚迁移到Spring Boot2.3。保存“javax.validation.constraints不存在”时将遇到错误。当我尝试将Spring Boot应用程序迁移到jdk14和Spring Boot2.3时,我遇到了这种情况。
问题不在于代码,而在于2.3版中的Spring Boot Starter Jars重构。
在Spring Boot2.3之前,验证程序库是webstarter(spring boot starter web)和webflux starter(spring boot starter webflux)的一部分。据观察,许多web应用程序不使用验证特性。这意味着验证程序库被不必要地添加到web应用程序中。
由于这个原因,验证程序库已经从这些启动程序中删除。这意味着如果你想使用那些验证程序库,你需要手动添加它。关于这个问题的更多细节可以在这里找到。
所以如果你想解决这个问题,在pom中添加下面的starter,你就可以开始了。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>