Skip to content

GeneratedFiles#addSourceFile should not allow to add a source in the default package #31628

Closed
@snicoll

Description

@snicoll

When a JavaFile is added to the list of files, its class name is deduced from its package name and type name. When adding a JavaFile that was added in the default package, this leads to:

Exception in thread "main" java.lang.IllegalArgumentException: 'className' must be a valid identifier, got '.MyConfig__BeanDefinitions'
        at org.springframework.util.Assert.isTrue(Assert.java:122)
        at org.springframework.aot.generate.GeneratedFiles.getClassNamePath(GeneratedFiles.java:164)
        at org.springframework.aot.generate.GeneratedFiles.addSourceFile(GeneratedFiles.java:70)
        at org.springframework.aot.generate.GeneratedFiles.addSourceFile(GeneratedFiles.java:47)
        at org.springframework.aot.generate.GeneratedClasses.writeTo(GeneratedClasses.java:198)
        at org.springframework.aot.generate.DefaultGenerationContext.writeGeneratedContent(DefaultGenerationContext.java:136)
        at org.springframework.context.aot.ContextAotProcessor.performAotProcessing(ContextAotProcessor.java:108)
        at org.springframework.context.aot.ContextAotProcessor.doProcess(ContextAotProcessor.java:84)
        at org.springframework.context.aot.ContextAotProcessor.doProcess(ContextAotProcessor.java:49)
        at org.springframework.context.aot.AbstractAotProcessor.process(AbstractAotProcessor.java:82)
        at org.springframework.boot.SpringApplicationAotProcessor.main(SpringApplicationAotProcessor.java:80)

Metadata

Metadata

Assignees

Labels

status: backportedAn issue that has been backported to maintenance branchestheme: aotAn issue related to Ahead-of-time processingtype: bugA general bug

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions