Skip to content

Commit 169cf67

Browse files
committed
Generally ignore generated code (annotated with @….Generated).
1 parent 95438a9 commit 169cf67

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

spring-modulith-core/src/main/java/org/springframework/modulith/core/ApplicationModules.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,10 @@
4444
import org.springframework.util.function.SingletonSupplier;
4545

4646
import com.tngtech.archunit.base.DescribedPredicate;
47+
import com.tngtech.archunit.core.domain.JavaAnnotation;
4748
import com.tngtech.archunit.core.domain.JavaClass;
4849
import com.tngtech.archunit.core.domain.JavaClasses;
50+
import com.tngtech.archunit.core.domain.JavaType;
4951
import com.tngtech.archunit.core.domain.properties.CanBeAnnotated;
5052
import com.tngtech.archunit.core.domain.properties.HasName;
5153
import com.tngtech.archunit.core.importer.ClassFileImporter;
@@ -67,12 +69,17 @@ public class ApplicationModules implements Iterable<ApplicationModule> {
6769
private static final ImportOption IMPORT_OPTION = new ImportOption.DoNotIncludeTests();
6870
private static final boolean JGRAPHT_PRESENT = ClassUtils.isPresent("org.jgrapht.Graph",
6971
ApplicationModules.class.getClassLoader());
70-
private static final DescribedPredicate<CanBeAnnotated> IS_AOT_TYPE;
72+
private static final DescribedPredicate<CanBeAnnotated> IS_AOT_TYPE, IS_GENERATED;
7173
private static final DescribedPredicate<HasName> IS_SPRING_CGLIB_PROXY = nameContaining("$$SpringCGLIB$$");
7274

7375
static {
76+
7477
IS_AOT_TYPE = ClassUtils.isPresent("org.springframework.aot.generate.Generated",
7578
ApplicationModules.class.getClassLoader()) ? getAtGenerated() : DescribedPredicate.alwaysFalse();
79+
80+
IS_GENERATED = annotatedWith(JavaClass.Predicates.simpleName("Generated")
81+
.onResultOf(JavaType::toErasure)
82+
.onResultOf(JavaAnnotation::getType));
7683
}
7784

7885
@Nullable

0 commit comments

Comments
 (0)