Ответ 1
Поскольку вы используете Maven (вместо Gradle), ознакомьтесь с этим руководством и этой частью официальной документации.
Основные шаги:
Сделайте встроенный контейнер сервлета предоставленным зависимым (поэтому удалив его из произведенной войны)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
Добавьте инициализатор приложения, например:
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;
public class WebInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
}
Этот класс необходим, чтобы иметь возможность загружать приложение Spring, поскольку нет web.xml
.