我已经将可以正常工作的Spring Boot 1.4 Web应用程序升级到2.0.5,我遵循了迁移指南并解决了各种编译器错误。通过IntelliJ运行应用程序时,我现在只能得到
below
尝试通过调试输出运行,没有其他
似乎没有启动嵌入式servlet容器,因此在查看Spring 2.0的更改日志后,我在配置中添加了以下内容
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.0.5.RELEASE)
Process finished with exit code 0
继续阅读并检查
spring.main.web-application-type=servlet
在我的build.grade中。它也作为依赖项进入
compile('org.springframework.boot:spring-boot-starter-web')
然后我尝试创建并使用一个简单的测试Main class
spring-boot-starter-tomcat
但仍然是“退出代码0”。
在使用上述类时,我还尝试从application.properties中删除所有内容。
考虑到没有错误,我不确定从这里去哪里。
答案 0 :(得分:2)
有两种方法可以修复此问题。
方法1:
@SpringBootApplication
public class TestApp {
@GetMapping("/")
String home() {
return "Hello World!";
}
public static void main(String[] args) throws Exception {
SpringApplication.run(TestApp.class, args);
}
}
方法2
步骤1:您的主类将只有main方法:
@SpringBootApplication
public class TestApp {
public static void main(String[] args) throws Exception {
SpringApplication.run(TestApp.class, args);
}
}
第2步:创建TestController并将您的方法放在此处,如下所示:
@RestController
public class TestController {
@GetMapping("/")
String home() {
return "Hello World!";
}
}