Я пишу приложение загрузки Spring, которое использует один из нескольких классов @Configuration
, в зависимости от того, какой @Profile
установлен в файле application.properties
.
В одном из этих классов конфигурации используется интерфейс REST, поэтому я включаю spring-boot-starter-web
в качестве зависимости.
Это запускает встроенный экземпляр Tomcat, что отлично.
Проблема в том, что другим профилям не нужен встроенный сервер (например, я использую JMS для обработки входящих сообщений вместо REST).
Можно ли остановить запуск @SpringBootApplication
от Tomcat по умолчанию и использовать его только для класса REST Configuration?
Например, аннотируя этот класс с помощью @EnableWebMVC
Вот пример моих @Configuration
классов:
REST:
@Profile({"REST"})
@Configuration
@EnableWebMvc
public class HttpConfiguration{
.
.
.
}
JMS:
@Profile({"JMS"})
@Configuration
@EnableJms
public class JMSConfiguration{
.
.
.
}
Спасибо