From 7c29c96da6738b18db770b89f4bfdfadb824fb34 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Tue, 6 Jan 2015 14:50:56 -0800 Subject: [PATCH] Change additional metadata file lookup logic Update ConfigurationMetadataAnnotationProcessor to find the additional metadata json file using createResource rather than getResource. Prior to this commit the file could be skipped when multiple files were contained on the classpath. Fixes gh-2271 --- .../ConfigurationMetadataAnnotationProcessor.java | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/ConfigurationMetadataAnnotationProcessor.java b/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/ConfigurationMetadataAnnotationProcessor.java index 6af93282d91..a470afb8627 100644 --- a/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/ConfigurationMetadataAnnotationProcessor.java +++ b/spring-boot-tools/spring-boot-configuration-processor/src/main/java/org/springframework/boot/configurationprocessor/ConfigurationMetadataAnnotationProcessor.java @@ -343,14 +343,10 @@ public class ConfigurationMetadataAnnotationProcessor extends AbstractProcessor private ConfigurationMetadata mergeManualMetadata(ConfigurationMetadata metadata) { try { - FileObject manualMetadata = this.processingEnv.getFiler().getResource( - StandardLocation.CLASS_PATH, "", + FileObject manualMetadata = this.processingEnv.getFiler().createResource( + StandardLocation.CLASS_OUTPUT, "", "META-INF/additional-spring-configuration-metadata.json"); - if (!"file".equals(manualMetadata.toUri().getScheme())) { - // We only want local files, not any classpath jars - return metadata; - } - InputStream inputStream = manualMetadata.openInputStream(); + InputStream inputStream = manualMetadata.toUri().toURL().openStream(); try { ConfigurationMetadata merged = new ConfigurationMetadata(metadata); try {