简体   繁体   中英

Java 11 Hibernate Validator module not found error

I am having trouble migrating my project to Java 11 from Java 8 with Hibernate validator.

I get the following error while attempting to build my project with 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;

The plugin in the pom for maven-processor-plugin is defined as follows:

                <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>

And the module-info.java looks like this:

module test.module {
...

    requires org.hibernate.validator;
}

Is there something specific that I am missing in order to fix this issue with JPMS?

As per documentation from Github repository, Release 3.3.3. maven-processor-plugin supports targets is 9

--release release

Compiles against the public, supported and documented API for a specific VM version. Supported release targets are 6, 7, 8, and 9.

I was able to get a solution to this problem following fabfas answer. I would suggest upgrading to version 4.0 of maven-processor-plugin and specify the proper plugin to run. Please also keep in mind I am using the jakarta suffixed libraries so this may require some fine tuning.

The module name is indeed 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>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM