Java 为什么可以';这个Spring引导应用程序找不到主页?
我正在尝试创建一个最小的Spring引导应用程序,它允许我使用 在前端进行反应 我想要实现的目标 当我运行Spring启动应用程序时,它应该显示一个带有React的页面 它里面的组件 项目结构 您可以找到源代码Java 为什么可以';这个Spring引导应用程序找不到主页?,java,maven,reactjs,spring-boot,kotlin,Java,Maven,Reactjs,Spring Boot,Kotlin,我正在尝试创建一个最小的Spring引导应用程序,它允许我使用 在前端进行反应 我想要实现的目标 当我运行Spring启动应用程序时,它应该显示一个带有React的页面 它里面的组件 项目结构 您可以找到源代码 阶级 主要 我得到的 当我 运行mvn cleanmvn clean spring引导:运行'and' 导航到http://localhost:8080 我得到404错误(见下文) 我怎样才能修好它 注: 我从教程中复制了这种方法 别告诉我要除掉科特林,那不太可能是科特林干的
- 阶级
- 主要
mvn clean
mvn clean spring引导:运行'and'http://localhost:8080
MyApp
类中将RestController
更改为Controller
,并移动main
里面的方法没有帮助
当前,MyApp
类如下所示:
@SpringBootApplication
@Controller
open class MyApp {
fun main(args: Array<String>) {
SpringApplication.run(MyApp::class.java,*args)
}
}
@springboot应用程序
@控制器
开放类MyApp{
趣味主线(args:Array){
run(MyApp::class.java,*args)
}
}
现在我没有Kotlin方面的经验,但我可以告诉您,以下代码中缺少了一些内容(除了有一个额外的RestController
注释)。在Java中,该类实现了
ServletContextInitializer
,并在其中运行了main
,运行以下静态方法:
SpringApplication.run(MyApp.class, args);
我希望这有帮助
使现代化
尝试添加一个模板解析bean,现在这不是唯一的方法,但值得一试,如下所示:
@Bean
public ClassLoaderTemplateResolver yourTemplateResolver() {
ClassLoaderTemplateResolver yourTemplateResolver = new ClassLoaderTemplateResolver();
yourTemplateResolver.setPrefix("templates/");
return yourTemplateResolver;
}
并将以下行添加到application.properties:
spring.thymeleaf.check-template-location=true
spring.thymeleaf.suffix=.html
别忘了将thymeleaf导入POM:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
org.springframework.boot
弹簧启动装置
您在控制台上看到了什么消息(您在那里键入了mvn
命令)?您是否看到“服务器已启动”等?您是否看到“服务器已启动”等:是。我已将mvn clean spring boot:run的输出包含在更新1中。请不要将错误和输出链接起来。将它们复制到这里并正确格式化,这样链接就不会更改或过期。他正在等待一个页面。因此,在这个用例中,@RestController
不是正确的注释。应该使用@Controller
。实际上,在控制器中,他使用了Controller
注释,请参见此处:但在应用程序初始值设定项和RestController中……感谢您的回答。我试过了,但没用(见更新2)。你能试着添加ClassLoaderTemplateResolver
bean吗?虽然它来自Thymeleaf,但既然你将模板添加到sources
文件夹,我想你需要添加一个模板解析器。检查答案的更新。有点晚:)现在检查。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>