Add custom-starter module: a Boot 4 auto-configuration starter with conditions, metadata and runner tests
Two-jar starter (autoconfigure + starter), a demo app, and 17 captured transcripts covering AutoConfiguration.imports, @ConditionalOn*, ordering, optional Jackson 3 integration, configuration metadata and the Boot 4 module split. Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Uu7q8vPeREyT4218EJPzz1
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
# Boot 4.1.1: where the auto-configuration classes a starter refers to now live
|
||||
|
||||
--- entries in spring-boot-autoconfigure's own AutoConfiguration.imports ---
|
||||
12
|
||||
|
||||
--- JacksonAutoConfiguration: which jar, which package ---
|
||||
spring-boot-autoconfigure-4.1.1.jar, classes named JacksonAutoConfiguration: 0
|
||||
spring-boot-jackson-4.1.1.jar: org/springframework/boot/jackson/autoconfigure/JacksonAutoConfiguration.class
|
||||
|
||||
--- what @AutoConfiguration is made of (javap -v, class-level annotations) ---
|
||||
org.springframework.context.annotation.Configuration(
|
||||
proxyBeanMethods=false
|
||||
org.springframework.boot.autoconfigure.AutoConfigureBefore
|
||||
org.springframework.boot.autoconfigure.AutoConfigureAfter
|
||||
|
||||
--- AutoConfigurationExcludeFilter, the filter @SpringBootApplication's scan applies: the classes it tests for (javap -c) ---
|
||||
ldc #26 // class org/springframework/context/annotation/Configuration
|
||||
ldc #40 // class org/springframework/boot/autoconfigure/AutoConfiguration
|
||||
ldc #40 // class org/springframework/boot/autoconfigure/AutoConfiguration
|
||||
invokestatic #65 // Method org/springframework/boot/context/annotation/ImportCandidates.load:(Ljava/lang/Class;Ljava/lang/ClassLoader;)Lorg/springframework/boot/context/annotation/ImportCandidates;
|
||||
|
||||
--- the Boot 3 import, compiled against the 4.1.1 jars ---
|
||||
masker-spring-boot-autoconfigure/src/broken/OldJacksonImport.java:4: error: package org.springframework.boot.autoconfigure.jackson does not exist
|
||||
import org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration;
|
||||
^
|
||||
masker-spring-boot-autoconfigure/src/broken/OldJacksonImport.java:7: error: cannot find symbol
|
||||
@AutoConfiguration(after = JacksonAutoConfiguration.class)
|
||||
^
|
||||
symbol: class JacksonAutoConfiguration
|
||||
2 errors
|
||||
Reference in New Issue
Block a user