This plugins provides the following features as of now.
yaml
files based on the spring boot's auto configuration jars are present in the classpathyaml
files if you have classes annotated with @ConfigurationProperties
, if your build is properly configuredsp.d
will show you spring.data
, spring.datasource
, also, port
would show server.port
as a suggestionFile -> New -> Project -> Spring Assistant
& File -> New -> Module -> Spring Assistant
wizards. Looks & Feel resembles Intellij Ultimate, but with less bells & whistlesAssuming that you have Spring boot's auto configuration jars are present in the classpath, this plugin will automatically allows you to autocomplete properties as suggestions in all your yml
files
Suggestions would appear as soon as you type/press CTRL+SPACE
.
Short form suggestions are also supported such as, sp.d
will show you spring.data
, spring.datasource
, e.t.c as suggestions that make your typing faster
In addition to libraries in the classpath, the plugin also allows you to have your own @ConfigurationProperties
available as suggestions in all your yml
files.
For this to work, you need to ensure the following steps are followed for your project/module
Enable annotation processing
is checked under Settings > Build, Execution & Deployment > Compiler > Annotation Processors
Make sure you add the following changes to to your project
For Maven
Add the following dependency
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
For Gradle
Add the following build configuration. You can use the propdeps-plugin for optional
scope (as we dont need spring-boot-configuration-processor
as a dependency in the generated jar/war)
dependencies {
optional "org.springframework.boot:spring-boot-configuration-processor"
}
compileJava.dependsOn(processResources)
output
directory instead of gradle's default build
directory, then you may need to File | Settings | Build, Execution, Deployment | Build Tools | Gradle | Runner => Delegate IDE build/run actions to gradle
& restart the IDE. This will ensure that gradle plugin generates metadata & Intellij is pointing to itIf you want to look at a sample project, look inside samples directory where the above setup is done. These samples allow properties from
@ConfigurationProperties
to be shown as suggestions
IMPORTANT
After changing your custom
@ConfigurationProperties
files, suggestions would be refreshed only after you trigger the build explicitly using keyboard (Ctrl+F9
)/UI
- If two groups from different auto configurations conflict with each other, the documentation for the group picked is random & undefined
- If a group & property represent the depth, the behaviour of the plugin is undefined.
To install the plugin open your editor (IntelliJ) and hit:
File > Settings > Plugins
and click on the Browse repositories
button.Spring Assistant
the right click and select Download plugin
.Apply
button, agree to restart your IDE and you're all done!Feel free to let me know what else you want added via the issues
Suggestions, feedback and other comments welcome via @1tontech on Twitter
See here
Spring Assistant - IntelliJ Plugin is open-sourced software licensed under the MIT license