java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName [英] java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName
本文介绍了java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
JDK:1.8.0_131
JDK: 1.8.0_131
Tomcat:8.0.27.0
Tomcat: 8.0.27.0
Hibernate Validator:6.0.7.Final +所有依赖项,可从以下网站下载: Hibernate Validator 6
Hibernate Validator: 6.0.7.Final + all the dependencies downloaded from: Hibernate Validator 6
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public AccountSyncResponse excute(AccountSyncRequest account_sync_request_)
{
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<AccountSyncRequest>> violations = validator.validate(account_sync_request_);
.
.
.
.
AccountSyncResponse _AccountSyncResponse = new AccountSyncResponse();
return _AccountSyncResponse;
}
代码在Validation.buildDefaultValidatorFactory()
上失败,例外:
java.lang.NoSuchMethodError: javax.validation.BootstrapConfiguration.getClockProviderClassName()Ljava/lang/String;
at org.hibernate.validator.internal.xml.ValidationBootstrapParameters.<init>(ValidationBootstrapParameters.java:63)
at org.hibernate.validator.internal.engine.ConfigurationImpl.parseValidationXml(ConfigurationImpl.java:527)
at org.hibernate.validator.internal.engine.ConfigurationImpl.buildValidatorFactory(ConfigurationImpl.java:328)
at javax.validation.Validation.buildDefaultValidatorFactory(Validation.java:110)
似乎使用了错误的jar文件,但我不知道是哪个文件.
It looks like the wrong jar file is being used but I can’t figure out which one.
推荐答案
从Springboot 1.5.x升级到Springboot2后,我遇到了同样的问题.解决方案是将Java EE 7升级到Java EE 8:
I had this same issue after upgrading from Springboot 1.5.x to Springboot2. The solution was to upgrade Java EE 7 to Java EE 8:
发件人:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
收件人:
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>8.0</version>
<scope>provided</scope>
</dependency>
这篇关于java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文