我是 Java 和 Spring 框架的新手。在开发 Spring roo 项目后,我在类中发现了以下错误:
The import javax.validation.constraints.NotNull cannot be resolved
NotNull cannot be resolved to a type
我正在使用 STS 3.1.0.RELEASE
有人可以指导我在做什么以及如何纠正它。
提前致谢
我是 Java 和 Spring 框架的新手。在开发 Spring roo 项目后,我在类中发现了以下错误:
The import javax.validation.constraints.NotNull cannot be resolved
NotNull cannot be resolved to a type
我正在使用 STS 3.1.0.RELEASE
有人可以指导我在做什么以及如何纠正它。
提前致谢
我有同样的问题。我发现最新版本的 Spring Boot 需要单独的依赖项进行验证。我尝试在 pom.xml 文件中添加以下依赖项并且它有效。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
必须将包含此类的 jar 添加到项目的构建路径中:http: //mvnrepository.com/artifact/javax.validation/validation-api/1.0.0.GA
对于 JDK-9,不支持旧版本的“javax.validation”。所以我们应该添加最新版本。
我们将通过以下方式知道任何 jar 的最新版本
C:\Users\username\.m2\repository\javax\validation\validation-api
上面的文件夹应该有jar的所有版本,然后您可以通过以下方式在pom.xml文件中添加最新版本作为依赖项
就我而言,“2.0.0.final”是最新版本。
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.0.Final</version>
</dependency>
从 Spring boot 2.3 版本开始,您必须在 pom.xml 中添加此依赖项
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
web starters 不再包含验证,因此您必须手动添加它
我正在使用 JDK JAVA 8,但我仍然遇到类似的问题。只需在我的 pom.xml 中添加以下示例,错误就消失了
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
以下文章帮助我找到了解决方案:“ https://www.baeldung.com/javax-validation ”
之前,Gradle 默认包含此依赖项。我不知道会发生什么。您必须手动添加此依赖项: implementation 'jakarta.validation:jakarta.validation-api:2.0.2'
它开始工作-))))))))
Intellij 解决方案: 粘贴下面的代码后,您需要(完全)关闭 Intellij,然后再次打开。
粘贴以下内容:
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>