pull/6855/head
Phillip Webb 8 years ago
parent 97f15d606d
commit 69e96c6211

@ -138,13 +138,17 @@ abstract class BeanTypeRegistry {
.getBeanDefinition(definition.getFactoryBeanName());
Class<?> factoryClass = ClassUtils.forName(factoryDefinition.getBeanClassName(),
beanFactory.getBeanClassLoader());
return getFactoryMethod(definition, factoryClass);
}
private Method getFactoryMethod(BeanDefinition definition, Class<?> factoryClass) {
Method uniqueMethod = null;
for (Method candidate : getCandidateFactoryMethods(definition, factoryClass)) {
if (candidate.getName().equals(definition.getFactoryMethodName())) {
if (uniqueMethod == null) {
uniqueMethod = candidate;
}
else if (!matchingArguments(candidate, uniqueMethod)) {
else if (!hasMatchingParameterTypes(candidate, uniqueMethod)) {
return null;
}
}
@ -164,7 +168,7 @@ abstract class BeanTypeRegistry {
&& ((AbstractBeanDefinition) definition).isNonPublicAccessAllowed();
}
private boolean matchingArguments(Method candidate, Method current) {
private boolean hasMatchingParameterTypes(Method candidate, Method current) {
return Arrays.equals(candidate.getParameterTypes(), current.getParameterTypes());
}

@ -246,8 +246,10 @@ public class RandomAccessDataFile implements RandomAccessData {
public RandomAccessFile acquire() throws IOException {
this.available.acquireUninterruptibly();
RandomAccessFile file = this.files.poll();
return (file == null
? new RandomAccessFile(RandomAccessDataFile.this.file, "r") : file);
if (file != null) {
return file;
}
return new RandomAccessFile(RandomAccessDataFile.this.file, "r");
}
public void release(RandomAccessFile file) {

@ -64,9 +64,9 @@ public abstract class AbstractRunMojo extends AbstractDependencyFilterMojo {
/**
* Add maven resources to the classpath directly, this allows live in-place editing of
* resources. Duplicate resources are removed from {@code target/classes} to prevent
* them to appear twice if {@code ClassLoader.getResources()} is called. Please consider
* adding {@code spring-boot-devtools} to your project instead as it provides this feature
* and many more.
* them to appear twice if {@code ClassLoader.getResources()} is called. Please
* consider adding {@code spring-boot-devtools} to your project instead as it provides
* this feature and many more.
* @since 1.0
*/
@Parameter(property = "run.addResources", defaultValue = "false")
@ -90,8 +90,8 @@ public abstract class AbstractRunMojo extends AbstractDependencyFilterMojo {
/**
* JVM arguments that should be associated with the forked process used to run the
* application. On command line, make sure to wrap multiple values between quotes.
* NOTE: the use of JVM arguments means that processes will be started by forking
* a new JVM.
* NOTE: the use of JVM arguments means that processes will be started by forking a
* new JVM.
* @since 1.1
*/
@Parameter(property = "run.jvmArguments")
@ -214,10 +214,10 @@ public abstract class AbstractRunMojo extends AbstractDependencyFilterMojo {
private void run(String startClassName)
throws MojoExecutionException, MojoFailureException {
findAgent();
boolean forkEnabled = isFork();
boolean fork = isFork();
this.project.getProperties().setProperty("_spring.boot.fork.enabled",
Boolean.toString(forkEnabled));
if (forkEnabled) {
Boolean.toString(fork));
if (fork) {
doRunWithForkedJvm(startClassName);
}
else {

@ -103,7 +103,8 @@ public class StopMojo extends AbstractMojo {
if (this.fork != null) {
return this.fork;
}
String property = this.project.getProperties().getProperty("_spring.boot.fork.enabled");
String property = this.project.getProperties()
.getProperty("_spring.boot.fork.enabled");
return Boolean.valueOf(property);
}

Loading…
Cancel
Save