此错误表示您的代码中使用了 Deequ 的 isGreaterThanOrEqualTo 方法,但是该方法不是 VerificationRunBuilder 的成员。解决此问题的方法是,您需要使用相应的类来访问此方法。以下是一个示例:
import com.amazon.deequ.constraints.Constraints;
import com.amazon.deequ.checks.Check;
import com.amazon.deequ.checks.CheckLevel;
import com.amazon.deequ.checks.CheckStatus;
import com.amazon.deequ.checks.CheckResult;
import com.amazon.deequ.checks.MetricFunction;
import com.amazon.deequ.VerificationResult;
import com.amazon.deequ.VerificationRunBuilder;
VerificationResult result = VerificationRunBuilder.create()
.onData(data)
.addCheck(
Check.create()
.hasSize(new com.amazon.deequ.constraints.SizeIsAbove(1000))
.isComplete("id")
.isUnique("id")
.isGreaterThanOrEqualTo("age", 18)
.isContainedIn("gender", Arrays.asList("male", "female"))
.hasDataType("event_time", com.amazon.deequ.constraints.ConstrainableDataTypes.Timestamp())
.hasCompliance("custom constraint",
"field1 != 'ab' OR field2 >= 100",
com.amazon.deequ.checks.CheckLevel.Warning())
)
.run();
result.getCheckResults().forEach(item -> {
if (item.getStatus() != CheckStatus.Success()) {
System.out.println("Failure");
System.out.println(item);
}
});
在上面的示例中,使用了 isGreaterThanOrEqualTo 方法,但是它被正确地应用于 Check 对象中。您需要参考 Deequ 的文档来找到正确的方法调用方式。