spring-projects / spring-projects/spring-tools
[feature,navigation] Add support to bean navigation in spring projects
Open
Nobody has claimed this yet.
status: needs-discussion
status: waiting-for-feedback
theme: spring index & symbols
type: enhancement
- Dominant language
- Java
- Stars
- 983
- Forks
- 240
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 7
Description
There can be several type of navigation added, but most important navigation are
- Navigate from bean definition to injection candidates
- Navigate from a injection to it's bead definition.
This can be easily achieved if we could index the required information, navigation information while we index the annotations. For example if a Inject annotation is processed we could keep the type of the field with it. Likewise we could keep the type for Bean annotation as well for example. Then when searching for a bean definition for a injection we could lookup our index for all subtypes which has the Bean annotation and which is a subtype of the field type which we want to find the bean definitions for :).
What do you all think about this feature ?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the annotation-indexing flow described in the issue, focusing on how Inject and Bean annotations are processed and what type information is retained. Then trace the existing navigation entry points, if present, and define how bean definitions and injection candidates should be connected. Done means both navigation directions resolve the relevant bean definitions and injection candidates.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, spring
- Domain
- developer-experience, devtools
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100