Vaadin 10和springboot-如何包装罐子?

时间:2018-10-09 20:31:56

标签: maven spring-boot vaadin10

这个问题很简单,但是我花了最后两天的时间来部署我的应用程序。到目前为止,还没有。

我的样式只有一个css文件,执行jar时,找不到css(404)或jar不会打包。

如此处所述:Spring Boot Executable jar structure “如果您的应用程序将打包为jar,请不要使用src / main / webapp文件夹” 和 “您应该将静态资源放在src / main / resources中。”

因此将CSS放在这里:     src / main / resources / styles.css

在Vaadin文档中(关于如何打包非常有帮助...),我这样输入css:

@StyleSheet("styles.css")

来源:https://vaadin.com/docs/v11/flow/importing-dependencies/tutorial-include-css.html

然后我打包我的项目:

 mvn clean package -Pproduction

我收到此错误:

[ERROR] Failed to execute goal com.vaadin:vaadin-maven-plugin:11.0.0:package-for-production (default) on project importparcoursup: Execution default of goal com.vaadin:vaadin-maven-plugin:11.0.0:package-for-production failed: An import that ends with 'styles.css' cannot be resolved: the corresponding file 'C:\Workspace\lasteclipeandjava10\parcoursup\target\frontend\styles.css' was not found.
[ERROR] Double check the corresponding import and verify the following:
[ERROR] * the import string is correct
[ERROR] * the file imported is either present in 'frontend://' directory of the project or in one of the project WebJar dependencies or in one of the regular jar dependencies
[ERROR] * if the file is present in one of the regular jar dependencies, it should be located in `META-INF/resources/frontend` directory in the jar

有人可以提供一个打包为jar的“ springboot + Vaadin10”应用程序的简单示例吗?

我尝试了很多配置(将META-INF中的css放入了maven构建过程中,包括webapp资源...),但是两天后,我仍然无法在服务器上部署我的应用!

2 个答案:

答案 0 :(得分:2)

最终解决方案

css必须在这里:

src/main/resources/META-INF/resources/frontend/styles.css

然后声明为:

@StyleSheet("frontend://styles.css")

答案 1 :(得分:1)

即使我仍然想念一个例子,这也可能有帮助:

  

Vaadin 10对加载静态资源的方式进行了一些更改,   例如应用程序模板,自定义样式以及任何其他   JavaScript文件。要点是应将此类文件放入   src / main / webapp / frontend /构建.war文件时   src / main / resources / META-INF / resources / frontend /生成.jar时   文件。

链接到Vaadin文档:Vaadin 10 and static resources