Merge branch '1.4.x' into 1.5.x

This commit is contained in:
Stephane Nicoll 2017-04-10 16:13:53 +02:00
commit a132bd141f
2 changed files with 13 additions and 4 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright 2012-2015 the original author or authors.
* Copyright 2012-2017 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -36,9 +36,11 @@ import org.springframework.context.annotation.Conditional;
public @interface ConditionalOnClass {
/**
* The classes that must be present. Since this annotation parsed by loading class
* bytecode it is safe to specify classes here that may ultimately not be on the
* classpath.
* The classes that must be present. Since this annotation is parsed by loading class
* bytecode, it is safe to specify classes here that may ultimately not be on the
* classpath, only if this annotation is directly on the affected component and
* <b>not</b> if this annotation is used as a composed, meta-annotation. In order to
* use this annotation as a meta-annotation, only use the {@link #name} attribute.
* @return the classes that must be present
*/
Class<?>[] value() default {};

View File

@ -6159,6 +6159,13 @@ actually use the `value` attribute to refer to the real class, even though that
might not actually appear on the running application classpath. You can also use the
`name` attribute if you prefer to specify the class name using a `String` value.
[TIP]
====
If you are using `@ConditionalOnClass` or `@ConditionalOnMissingClass` as apart of a
meta-annotation to compose your own composed annotations you must use `name` as referring
to the class in such a case is not handled.
====
[[boot-features-bean-conditions]]