我正在使用Apache bval.Looks进行验证,例如apache bval依赖于apache geronimo。
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-validation_1.0_spec</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.bval</groupId>
<artifactId>org.apache.bval.bundle</artifactId>
<version>0.5</version>
</dependency>
我尝试删除geronimo依赖项,但有一些编译错误。 例如:
ValidatorFactory avf = Validation.byProvider(ApacheValidationProvider.class).configure().buildValidatorFactory();
无法识别ValidatoFactory - 但是在包含geronimo依赖项时解决了这个问题。
为什么apache bval依赖于geronimo?
答案 0 :(得分:0)
我不认为直接依赖于Geronimo。似乎由于某种原因,Geronimo / Apache重新捆绑了Bean Validation API。任何Bean Validation提供程序都需要此API。似乎Geronimo工件还添加了一些与OSGi相关的东西,但除此之外它只是Bean Validation API。
您可以尝试使用官方Bean Validation API替换它:
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
从Bean验证的角度来看,这应该没有区别。