【问题标题】:Vaadin flow - Having views in a different packageVaadin flow - 在不同的包中拥有视图
【发布时间】:2021-11-18 10:38:24
【问题描述】:
vaadin flow 中存在一个选项,可以将视图放在不同的包中,而不是作为主 Spring Boot 类所在的子包?例如
com.xyz.vaadin.app --> Spring Boot Main
com.xyz.vaadin.config
com.xyz.vaadin.views --> Main view
我已经尝试使用“@SpringBootApplication scanBasePackages”或“scanBasePackageClasses”并传递了主视图包或主视图类,但在启动应用程序后它没有找到视图。错误“找不到路由”
【问题讨论】:
标签:
java
vaadin
vaadin-flow
【解决方案1】:
您可以在 Spring 应用程序类上添加 @EnableVaadin 注释,并提供包名。所以在你的例子中它会是
@SpringBootApplication
@EnableVaadin(value = "com.xyz.vaadin.views")
public class MainClass {
public static void main(String[] args) {
SpringApplication.run(MainClass.class, args);
}
}
【解决方案2】:
当您使用未使用“@Route”注释的视图/组件实例化“RouterLink”时,可能会触发此问题。即使您实际上没有尝试访问此特定视图,也会发生这种情况。