[英]Java 11 Hibernate Validator module not found error
我无法使用 Hibernate 验证器将我的项目从 Java 8 迁移到 Java 11。
尝试使用 maven 构建我的项目时出现以下错误:
[INFO] --- maven-processor-plugin:3.3.3:process (default) @ maple-orm ---
[ERROR] diagnostic: ...\module-info.java:19: error: module not found: org.hibernate.validator
requires org.hibernate.validator;
maven-processor-plugin在pom中的插件定义如下:
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>3.3.3</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>process</goal>
</goals>
<configuration>
<processors>
<processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>
</processors>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>5.4.10.Final</version>
</dependency>
</dependencies>
</plugin>
module-info.java 看起来像这样:
module test.module {
...
requires org.hibernate.validator;
}
为了用 JPMS 解决这个问题,我是否遗漏了一些特定的东西?
根据 Github 存储库中的文档,版本 3.3.3。 maven-processor-plugin
支持的目标是 9
--release 发布
针对特定 VM 版本的公共、支持和记录的 API 进行编译。 支持的发布目标是 6、7、8 和 9。
在 fabfas 回答之后,我能够解决这个问题。 我建议升级到maven-processor-plugin
4.0
版并指定要运行的正确插件。 还请记住,我使用的是jakarta
后缀的库,因此这可能需要进行一些微调。
模块名称确实是org.hibernate.validator
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>4.0</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>process</goal>
</goals>
<configuration>
<processors>
<processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>
</processors>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen-jakarta</artifactId>
<version>${hibernate.version}</version>
</dependency>
</dependencies>
</plugin>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.