You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2022/03/06 08:24:59 UTC
[camel-spring-boot] branch main updated: CAMEL-17738: camel-spring-boot - Cannot load resources from nested jar inside spring boot fat jar. Thanks to Brad Harvey for reporting and the suggested fix.
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git
The following commit(s) were added to refs/heads/main by this push:
new 9f9ef38 CAMEL-17738: camel-spring-boot - Cannot load resources from nested jar inside spring boot fat jar. Thanks to Brad Harvey for reporting and the suggested fix.
9f9ef38 is described below
commit 9f9ef38a69fdf96947ecdfadb4fa7f42a6de8835
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Sun Mar 6 09:22:39 2022 +0100
CAMEL-17738: camel-spring-boot - Cannot load resources from nested jar inside spring boot fat jar. Thanks to Brad Harvey for reporting and the suggested fix.
---
.../boot/FatJarPackageScanResourceResolver.java | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/core/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/FatJarPackageScanResourceResolver.java b/core/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/FatJarPackageScanResourceResolver.java
index 760a1a0..249d294 100644
--- a/core/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/FatJarPackageScanResourceResolver.java
+++ b/core/camel-spring-boot/src/main/java/org/apache/camel/spring/boot/FatJarPackageScanResourceResolver.java
@@ -45,8 +45,6 @@ public class FatJarPackageScanResourceResolver extends DefaultPackageScanResourc
protected List<String> doLoadImplementationsInJar(String packageName, InputStream stream, String urlPath,
boolean inspectNestedJars, boolean closeStream) {
-
-
List<String> entries = new ArrayList<>();
JarInputStream jarStream = null;
@@ -55,21 +53,18 @@ public class FatJarPackageScanResourceResolver extends DefaultPackageScanResourc
JarEntry entry;
while ((entry = jarStream.getNextJarEntry()) != null) {
- String name = entry.getName();
-
- name = name.trim();
- if (!entry.isDirectory() && !name.endsWith(".class")) {
+ String name = entry.getName().trim();
+ if (inspectNestedJars && !entry.isDirectory() && isSpringBootNestedJar(name)) {
+ String nestedUrl = urlPath + "!/" + name;
+ log.trace("Inspecting nested jar: {}", nestedUrl);
+ List<String> nestedEntries = doLoadImplementationsInJar(packageName, jarStream, nestedUrl, false, false);
+ entries.addAll(nestedEntries);
+ } else if (!entry.isDirectory() && !name.endsWith(".class")) {
name = cleanupSpringBootClassName(name);
// name is FQN so it must start with package name
if (name.startsWith(packageName)) {
entries.add(name);
}
- } else if (inspectNestedJars && !entry.isDirectory() && isSpringBootNestedJar(name)) {
- String nestedUrl = urlPath + "!/" + name;
- log.trace("Inspecting nested jar: {}", nestedUrl);
-
- List<String> nestedEntries = doLoadImplementationsInJar(packageName, jarStream, nestedUrl, false, false);
- entries.addAll(nestedEntries);
}
}
} catch (IOException ioe) {