部署为 war 时是否需要 spring 引导应用程序的 "main" 方法
Is "main" method of spring boot application required when deploy as war
当我们在 tomcat 上将 spring 启动应用程序部署为 "war" 时,我们必须扩展 SpringBootServletInitializer 并覆盖“configure”方法。
当我评论 "main" 方法时,它仍然有效并且 spring 启动应用程序和我的服务工作正常。将项目部署为 "war" 时,我们还需要 main 方法吗?为什么?
@SpringBootApplication
@EnableWs
public class TestApp extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder
builder) {
return builder.sources(TestApp.class);
}
public static void main(String[] args) {
SpringApplication.run(TestApp.class, args);
}
}
@SpringBootApplication
@EnableWs
public class TestApp extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder
builder) {
return builder.sources(TestApp.class);
}
/*public static void main(String[] args) {
SpringApplication.run(TestApp.class, args);
}*/
}
不,你不需要,因为没有人会调用它。
如果您想 运行 在 Web 容器之外,请期待这种情况。
当我们在 tomcat 上将 spring 启动应用程序部署为 "war" 时,我们必须扩展 SpringBootServletInitializer 并覆盖“configure”方法。 当我评论 "main" 方法时,它仍然有效并且 spring 启动应用程序和我的服务工作正常。将项目部署为 "war" 时,我们还需要 main 方法吗?为什么?
@SpringBootApplication
@EnableWs
public class TestApp extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder
builder) {
return builder.sources(TestApp.class);
}
public static void main(String[] args) {
SpringApplication.run(TestApp.class, args);
}
}
@SpringBootApplication
@EnableWs
public class TestApp extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder
builder) {
return builder.sources(TestApp.class);
}
/*public static void main(String[] args) {
SpringApplication.run(TestApp.class, args);
}*/
}
不,你不需要,因为没有人会调用它。
如果您想 运行 在 Web 容器之外,请期待这种情况。