diff --git a/spring-core/src/main/java/org/springframework/core/DefaultParameterNameDiscoverer.java b/spring-core/src/main/java/org/springframework/core/DefaultParameterNameDiscoverer.java index 4bc362f0de6..337a38080c2 100644 --- a/spring-core/src/main/java/org/springframework/core/DefaultParameterNameDiscoverer.java +++ b/spring-core/src/main/java/org/springframework/core/DefaultParameterNameDiscoverer.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2018 the original author or authors. + * Copyright 2002-2020 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. @@ -23,14 +23,15 @@ package org.springframework.core; * debug information in the class file. * *
If a Kotlin reflection implementation is present, - * {@link KotlinReflectionParameterNameDiscoverer} is added first in the list and used - * for Kotlin classes and interfaces. When compiling or running as a Graal native image, - * no {@link ParameterNameDiscoverer} is used. + * {@link KotlinReflectionParameterNameDiscoverer} is added first in the list and + * used for Kotlin classes and interfaces. When compiling or running as a GraalVM + * native image, the {@code KotlinReflectionParameterNameDiscoverer} is not used. * *
Further discoverers may be added through {@link #addDiscoverer(ParameterNameDiscoverer)}. * * @author Juergen Hoeller * @author Sebastien Deleuze + * @author Sam Brannen * @since 4.0 * @see StandardReflectionParameterNameDiscoverer * @see LocalVariableTableParameterNameDiscoverer @@ -39,13 +40,11 @@ package org.springframework.core; public class DefaultParameterNameDiscoverer extends PrioritizedParameterNameDiscoverer { public DefaultParameterNameDiscoverer() { - if (!GraalDetector.inImageCode()) { - if (KotlinDetector.isKotlinReflectPresent()) { - addDiscoverer(new KotlinReflectionParameterNameDiscoverer()); - } - addDiscoverer(new StandardReflectionParameterNameDiscoverer()); - addDiscoverer(new LocalVariableTableParameterNameDiscoverer()); + if (KotlinDetector.isKotlinReflectPresent() && !GraalDetector.inImageCode()) { + addDiscoverer(new KotlinReflectionParameterNameDiscoverer()); } + addDiscoverer(new StandardReflectionParameterNameDiscoverer()); + addDiscoverer(new LocalVariableTableParameterNameDiscoverer()); } }