正在做的一个项目,前端用vue开发,后台用springboot,生成静态文件丢到resouces下面之后,启动项目,发现一些图标显示不正常,打开控制台一看,有几个警告
OTS parsing error: Failed to convert WOFF 2.0
上网一搜,说是maven打包会替换文件占位符,二进制文件给破坏了
按照上面的方式试了还是不行
工程启动的包是用maven-assembly-plugin打包出来的,可能是这个插件打包的问题。
改了一下配置文件assembly.xml
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>assembly</id>
<formats>
<format>tar.gz</format> <!-- 其他可选格式 gzip/zip/tar.gz/ -->
</formats>
<includeBaseDirectory>true</includeBaseDirectory>
<dependencySets>
<dependencySet>
<outputDirectory>lib</outputDirectory>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>src/main/scripts</directory>
<outputDirectory>opbin</outputDirectory>
<fileMode>0755</fileMode>
<filtered>true</filtered>
</fileSet>
<fileSet>
<directory>src/main/resources</directory>
<outputDirectory>conf</outputDirectory>
<fileMode>0644</fileMode>
<filtered>false</filtered>
</fileSet>
</fileSets>
</assembly>
把上面filtered配置由原来的true改成false,启动一看,可以了!!!
PS:我们项目已经不用maven的替换了,换了另外的配置中心来处理占位符,所以关掉这个过滤操作也没事