Vaadin 的 CssImport 注释是否损坏?

Is Vaadin's CssImport annotation broken?

我们使用了 Vaadin 14.5,自定义 CSS 的 @CssImport 工作正常。 现在我们想更新,但自 14.6 以来,@CssImport 不再加载自定义 CSS。

我们有以下 Maven 结构:

- app-1, -2... : the apps that have common code and style

- shared : all the code and style we share between our apps
 |
 +- src/main/java/our/package/AbstractUI.java
 |
  - src/main/resources/META-INF/resources/frontend/
   |
   +- css
      |  
      +-styles.css
      |
       - vaadin-vertical-layout.css

在共享工件中,我们有几个用于 Vaadin 组件的自定义 CSS 文件,我们在其中解决必须在阴影 DOMs:[=19 中调整的 CSS =]

vaadin-vertical-layout.css
/* Page */
:host(.Page) {
    left: 64px;
    padding-top: 2em;
    position: absolute;
    transition: all 0.5s ease;
    width: calc(100% - 64px);
}

然后我们在 class AbstractUI 中加载所有这些自定义 CSS,这是所有其他 UI [=] 的超级 class 44=]es:

@StyleSheet("./css/styles.css")
...
@CssImport(value = "./css/vaadin-vertical-layout.css", themeFor = "vaadin-vertical-layout")
@Theme(value = Material.class, variant = Material.LIGHT)
public abstract class AbstractUI extends VerticalLayout { 

然后应用程序就不必理会所有注释,只需扩展 AbstractUI 并加载 CSS 并将其添加到现有影子 DOM CSS.

这在 Vaadin 14 到 14.5.5 时运行良好,但在 14.6.0 之后,不再加载自定义 CSS。 vaadin-maven-plugin 会在构建前端时检查 CSS 文件是否存在(如果不存在则退出并报错),但在应用程序中 CSS 只是没有加载。 澄清一下:@StyleSheet 注释仍然有效,因此 CSS 已加载。

这是 Vaadin 中的错误还是我们遗漏了一些关键信息?

缺少的关键信息是名为“TinyMCE for Flow”的 Vaadin web 组件,这是导致此行为的原因。不知道为什么这么崩溃。 解决方案是将其更新到最新版本 (3.1.1)。