我有一个带有自定义css样式的thymeleaf html模板和一个“飞碟”来生成pdf并从GET RESTendpoint下载。
当我运行Application类并使用endpoint时,下载的pdf按预期应用了css样式。但是,当它打包在jar中并运行时,下载的pdf没有应用样式。
这是html模板如何寻找style. css
<head>
<meta charset="UTF-8"/>
<link th:href="@{src/main/resources/templates/styling.css}" rel="stylesheet" type="text/css"/>
有人能告诉我当应用程序被包装在jar时有什么问题吗?
在thymeleaf模板中,我有一个外部css的绝对路径,如
<link th:href="@{src/main/resources/templates/styling.css}" rel="stylesheet" type="text/css"/>
当应用程序作为jar时,css的路径是不一样的,因此它没有解决。
我试着用相对路径
<link th:href="@{/templates/styling.css}"
但这不适用于thymeleaf的Context类,它只适用于IWebContext类。
因此,作为一种解决方案,我必须向模板添加内联样式,使其适用于样式化的pdf生成。