Features

IntelliJ IDEA 2017.2: Spring Boot Improvements

Endpoints Tab

The Run/Debug tool windows for Spring Boot applications now contain an Endpoints tab which will include information retrieved from the application’s actuator endpoints Beans, Health, and Mapping. ‘spring-boot-starter-actuator’ must be added as a dependency to the application to enable these endpoints. The Spring Boot Run/Debug configuration option ‘Enable JMX agent’ must be also enabled in order to make new Endpoints tab appear.

Initializr

For Gradle-based projects: issues with automatic setup for have been fixed, and a run configuration can now be created automatically as well (see Application Settings below).

Configuration Files

Support for custom configuration files is now available. To define a custom spring.config.name, select the Spring Boot fileset under Facets (in the Project Structure) and open the customization dialog via toolbar button:

Adding a custom-named application properties file

You can also add (additional) configuration files via “+” button. Any bootstrap.* files that are found are always added automatically.

Completion for configuration keys has been improved: keys referring to types not on the classpath (e.g. database specific keys) are shown at the bottom of the completion list,, “local” keys defined in additional-config.json are at the top.

In Spring Boot 1.5, an additional “level” (warning/error) for denoting deprecation status of configuration keys was added. This is now fully supported in IntelliJ IDEA and highlighted accordingly in configuration files and documentation. 

Deprecation highlighting

Auto-Configuration

Detected auto-configuration classes are now sorted according to @AutoConfigureOrder and @AutoConfigureAfter|Before. For @ConditionalOnProperty the actual configuration key values will now be evaluated so IntelliJ IDEA will be able to more correctly evaluate autoconfigured Spring Beans in the code.

Banner Files

If you have a custom banner file that doesn’t have the standard banner.txt name and your configuration includes the banner.location setting, it is fully recognised and will offer code highlighting and completion.

Application Settings

Finally, the Spring Boot application settings are easier to find. They’ve been grouped together under a new Spring Boot section in Languages and Frameworks.  As mentioned earlier, now the “Create Run Configuration automatically” setting applies to Gradle as well as Maven.

Spring Boot application settings

image description