【问题标题】:Vaadin 23 cannot handle @Viewport annotationVaadin 23 无法处理@Viewport 注释
【发布时间】:2022-11-28 22:28:24
【问题描述】:

我已将 Vaadin 14 应用程序升级到 Vaadin 23.1.3,现在它拒绝启动并显示以下错误消息:

Found app shell configuration annotations in non `AppShellConfigurator` classes.
Please create a custom class implementing `AppShellConfigurator` and move the following annotations to it:
    - @Viewport from my.custom.class

但是,我的类没有这个注解,它只是用这个注解扩展了一个抽象类。但我无法更改抽象类,因为它是第三方库。那么有没有办法告诉 Vaadin 忽略此注释并使用我在 AppShellConfigurator 类中提供的注释?或者有什么其他方法可以让这个应用程序在不放弃第 3 方库的情况下启动?

【问题讨论】:

  • 将问题报告给维护者并进行修复。
  • 不,没有,您的第 3 方库需要修复,否则您将回到 vaadin 14。它仍然有 LTS。

标签: vaadin


【解决方案1】:

如果有问题的类只是一个抽象类,您可以尝试创建一个具有完全相同的结构和名称但没有 Vieport 注释的自定义类。然后只需导入您的自定义类而不是来自外部包的自定义类。

例如,当使用 com.github.appreciated:app-layout-addon 包中的 AppLayoutRouterLayout 类时,您可以将其用法替换为以下类:

import com.github.appreciated.app.layout.component.applayout.AppLayout;
import com.github.appreciated.app.layout.component.router.AppLayoutRouterLayoutBase;

public abstract class AppLayoutRouterLayout<T extends AppLayout> extends AppLayoutRouterLayoutBase<T> {

}

【讨论】:

    猜你喜欢
    • 2014-01-08
    • 1970-01-01
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 2022-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多