Настройки IDE UTF-8, ОС Windows 10, русский язык. Код для вывода на консоль:
System.out.println("тест")
Spring Boot без зависимости «spring-boot-devtools» в IDEA в порядке
Spring Boot с «spring-boot-devtools» в консоли Windows в порядке




Следующая конфигурация в pom.xml решит проблему:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
<jvmArguments>-Dfile.encoding=UTF8</jvmArguments>
</configuration>
</plugin>
</plugins>
</build>
Кодировка консоли Windows — cp1251 с вашей локалью, а кодировка консоли IntelliJ IDEA — UTF-8.
При запуске из IntelliJ IDEA параметр -Dfile.encoding=UTF8 добавляется в командную строку, когда IDE запускает Maven, чтобы кодировка вывода Maven JVM была такой же, как кодировка консоли IDE.
Без spring-boot-devtools этот параметр передается правильно и обрабатывается процессом JVM, выполняющим ваш код в консоли IDE. Это тот же экземпляр JVM, на котором работает Maven, все работает нормально.
С зависимостью spring-boot-devtools Maven JVM разветвляет другую JVM для запуска вашего кода, и параметр кодирования файла больше не передается ей. Кодировка файла по умолчанию соответствует языковому стандарту системы для нового процесса JVM и становится cp1251, в то время как консоль IntelliJ IDEA по-прежнему настроена на использование кодировки UTF-8. Вывод нарушен, как показано на скриншоте.
spring-boot-maven-pluginjvmArguments конфигурация должна использоваться для передачи опции кодирования разветвленной JVM. Это также заставляет консоль Windows использовать ту же кодировку, чтобы приложение продолжало правильно работать в командной строке.