diff --git a/components/sbm-core/src/main/java/org/springframework/sbm/build/impl/OpenRewriteMavenBuildFile.java b/components/sbm-core/src/main/java/org/springframework/sbm/build/impl/OpenRewriteMavenBuildFile.java index 9178d5aed..fb05a94e5 100644 --- a/components/sbm-core/src/main/java/org/springframework/sbm/build/impl/OpenRewriteMavenBuildFile.java +++ b/components/sbm-core/src/main/java/org/springframework/sbm/build/impl/OpenRewriteMavenBuildFile.java @@ -278,6 +278,10 @@ public List getRequestedDependencies() { artifactId, d.getScope() != null ? Scope.fromName(d.getScope()) : null ); + if (dependencies.isEmpty()) { + // requested dependency from another module in this multi-module project won't be resolvable + return d; + } ResolvedDependency resolvedDependency = dependencies.get(0); d.setVersion(resolvedDependency.getVersion()); d.setClassifier(resolvedDependency.getClassifier()); diff --git a/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteMember.java b/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteMember.java index cefa8a4c2..a05e3c789 100644 --- a/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteMember.java +++ b/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteMember.java @@ -82,7 +82,7 @@ public Annotation getAnnotation(String annotation) { } else if (type1.getClass().isAssignableFrom(JavaType.Class.class)) { JavaType.Class type = (JavaType.Class) a.getType(); if (type == null) { - String simpleName = ((J.Identifier) a.getAnnotationType()).getSimpleName(); + String simpleName = a.getSimpleName(); log.error("Could not get Type for annotation: '" + simpleName + "' while comparing with '" + annotation + "'."); return false; } diff --git a/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteType.java b/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteType.java index c88ed622f..7b5b63cf0 100644 --- a/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteType.java +++ b/components/sbm-core/src/main/java/org/springframework/sbm/java/impl/OpenRewriteType.java @@ -178,7 +178,7 @@ private List findORAnnotations(String annotation) { .stream() .filter(a -> { Object typeObject = a.getAnnotationType().getType(); - String simpleName = ((J.Identifier) a.getAnnotationType()).getSimpleName(); + String simpleName = a.getSimpleName(); if (JavaType.Unknown.class.isInstance(typeObject)) { log.warn("Could not resolve Type for annotation: '" + simpleName + "' while comparing with '" + annotation + "'."); return false; diff --git a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/openrewrite/SecurityManagerUsagesFinder.java b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/openrewrite/SecurityManagerUsagesFinder.java index 63ac4b8e9..329048dbe 100644 --- a/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/openrewrite/SecurityManagerUsagesFinder.java +++ b/components/sbm-recipes-boot-upgrade/src/main/java/org/springframework/sbm/boot/upgrade_27_30/openrewrite/SecurityManagerUsagesFinder.java @@ -44,7 +44,7 @@ public J.MethodInvocation visitMethodInvocation(J.MethodInvocation method, Execu // find System.getSecurityManager() J.MethodInvocation m = super.visitMethodInvocation(method, executionContext); - if("java.lang.System".equals(m.getMethodType().getDeclaringType().getFullyQualifiedName()) && "getSecurityManager".equals(m.getName().getSimpleName())) { + if(m.getMethodType() != null && "java.lang.System".equals(m.getMethodType().getDeclaringType().getFullyQualifiedName()) && "getSecurityManager".equals(m.getName().getSimpleName())) { return m.withMarkers(m.getMarkers().addIfAbsent(new SearchResult(UUID.randomUUID(), "Indicator for usage for SecurityManager: calls to System.getSecurityManager()"))); } return m;