diff --git a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/OnClassCondition.java b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/OnClassCondition.java index d6c596e6841..5465ed2d6c3 100644 --- a/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/OnClassCondition.java +++ b/spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/OnClassCondition.java @@ -165,10 +165,12 @@ class OnClassCondition extends FilteringSpringBootCondition { catch (InterruptedException ex) { Thread.currentThread().interrupt(); } - if (this.failure != null) { - ReflectionUtils.rethrowRuntimeException(this.failure); + Throwable failure = this.failure; + if (failure != null) { + ReflectionUtils.rethrowRuntimeException(failure); } - return this.outcomes; + ConditionOutcome[] outcomes = this.outcomes; + return (outcomes != null) ? outcomes : new ConditionOutcome[0]; } }