#java #spring #github #jar #war
Вопрос:
При попытке использовать некоторые весенние проекты с GitHub я сталкиваюсь с тем, что в проекте нет файла с точкой входа (основная общедоступная статика), вопрос в том, как запускать такие проекты?
Комментарии:
1. Не могли бы вы, пожалуйста, связать репозиторий?
Ответ №1:
Если требуется , чтобы проект был упакован как WAR и развернут на сервере приложений для запуска, «статическая основная» точка входа находится на сервере приложений, но не в вашем приложении.
В случае Tomcat он относится к классу org.apache.catalina.startup.Bootstrap
Ответ №2:
Это зависит от того, как вы собираетесь запускать свое приложение. Если вы просто хотите запустить свой проект в какой-либо среде разработки или JAR
файле, достаточно объявить следующий main
метод:
@SpringBootApplication
public class BackendServerApplication {
public static void main(String [] args) {
SpringApplication.run(BackendServerApplication.class);
}
}
где BackendServerApplication.class
находится класс «точка входа».
Если вам нужно развернуть приложение из WAR
файла, вам также необходимо расширить SpringBootServletInitializer
класс, но имейте в виду, что main
метод не вызывается (потому что, как упоминал Кен Чан, точка входа находится на сервере приложений, но не в вашем приложении). Вы можете узнать больше здесь и здесь.
@SpringBootApplication
public class BackendServerApplication extends SpringBootServletInitializer {
public static void main(String [] args) {
SpringApplication.run(BackendServerApplication.class);
}
}
Комментарии:
1. Спасибо, я постараюсь
![]()
2. Я сожалею , что если существующий проект не является приложением для загрузки spring (а я думаю , что это не так , иначе OP уже должен найти основной класс), перенос его в проект с загрузкой spring-это не просто добавление
@SpringBootApplication
класса, вам нужно сделать гораздо больше для миграции.