Relax GraalVM check in DefaultParameterNameDiscoverer
Prior to this commit, DefaultParameterNameDiscoverer did not register any discovers when compiling or running as a GraalVM native image. This commit relaxes the GraalVM check so that it is only applied to the registration of KotlinReflectionParameterNameDiscoverer. Consequently, StandardReflectionParameterNameDiscoverer and LocalVariableTableParameterNameDiscoverer are once again always registered by DefaultParameterNameDiscoverer. Closes gh-24600
This commit is contained in:
parent
c3bc28762e
commit
787b09b202
|
@ -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.
|
||||
*
|
||||
* <p>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.
|
||||
*
|
||||
* <p>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());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue