【发布时间】:2023-02-11 05:08:01
【问题描述】:
我正在尝试构建这个项目并使用休眠验证器得到这个错误。我不是在引用这个类。看起来不像是实际的编译错误。
这是相关的休眠验证程序参考。 Spring Boot 1.5 应用程序。
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.3.6.Final</version>
</dependency>
找不到可能的注释?
错误:
[错误]无法在项目 priapp-mobileapi-proc 上执行目标 org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile): 致命错误编译: java.lang.NoClassDefFoundError: org/hibernate /validator/group/DefaultGroupSequenceProvider: org.hibernate.validator.group.DefaultGroupSequenceProvider -> [帮助 1] [错误]
阿帕奇 Maven 3.5.3(3383c37e1f9e9b3bc3df5050c29c8aff9f295297;2018-02-24T14:49:05-05:00) Maven 主页:/Users/user/Documents/tools/apache-maven-3.5.3 Java 版本:1.8.0_301,供应商:Oracle Corporation Java 主页:/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home/jre 默认语言环境:en_US,平台编码:UTF-8 操作系统名称:“mac os x”,版本:“10.15.7”,arch:“x86_64”,系列:“mac”
引起:java.lang.ClassNotFoundException:org.hibernate.validator.group.DefaultGroupSequenceProvider 在 java.net.URLClassLoader.findClass (URLClassLoader.java:382) 在 java.lang.ClassLoader.loadClass (ClassLoader.java:418) 在 java.lang.ClassLoader.loadClass (ClassLoader.java:351) 在 org.hibernate.validator.ap.checks.GroupSequenceProviderCheck。 (GroupSequenceProviderCheck.java:63) 在 org.hibernate.validator.ap.checks.ConstraintCheckFactory。 (ConstraintCheckFactory.java:125) 在 org.hibernate.validator.ap.ConstraintAnnotationVisitor。 (ConstraintAnnotationVisitor.java:68) 在 org.hibernate.validator.ap.ConstraintValidationProcessor.process (ConstraintValidationProcessor.java:101) 在 com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor (JavacProcessingEnvironment.java:794) 在 com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs (JavacProcessingEnvironment.java:705) 在 com.sun.tools.javac.processing.JavacProcessingEnvironment.access$1800 (JavacProcessingEnvironment.java:91) 在 com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run (JavacProcessingEnvironment.java:1035) 在 com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing (JavacProcessingEnvironment.java:1176) 在 com.sun.tools.javac.main.JavaCompiler.processAnnotations (JavaCompiler.java:1170) 在 com.sun.tools.javac.main.JavaCompiler.compile (JavaCompiler.java:856) 在 com.sun.tools.javac.main.Main.compile (Main.java:523) 在 com.sun.tools.javac.api.JavacTaskImpl.doCall (JavacTaskImpl.java:129) 在 com.sun.tools.javac.api.JavacTaskImpl.call (JavacTaskImpl.java:138) 在 org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess (JavaxToolsCompiler.java:126) 在 org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile (JavacCompiler.java:169) 在 org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute (AbstractCompilerMojo.java:785) 在 org.apache.maven.plugin.compiler.CompilerMojo.execute (CompilerMojo.java:129) 在 org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) 在 org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) 在 org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) 在 org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) 在 org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) 在 org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) 在 org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) 在 org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) 在 org.apache.maven.cli.MavenCli.execute (MavenCli.java:956) 在 org.apache.maven.cli.MavenCli.doMain (MavenCli.java:290) 在 org.apache.maven.cli.MavenCli.main (MavenCli.java:194) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 在 sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke (Method.java:498) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) 在 org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) 在 org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) 在 org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356)
【问题讨论】:
-
除了使用非常旧版本的 Maven 和 JDK 之外,我建议阅读文档 hibernate.org/validator/documentation/getting-started...
-
我通过重新排列某些依赖项的顺序来解决这个问题