我无法让spring boot正确发布字体文件。
由于我迁移到spring boot,font-awesome没有正确显示图标,而是我得到了一个正方形。
在这种情况下,我的文件是本地的,网址很好,因为我可以看到它们加载到chrome控制台的网络选项卡中。
如果我使用maxcdn链接更改标题中的css加载:
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font- awesome/4.3.0/css/font-awesome.min.css">
然后它的工作原理。问题是我有其他woff加载不在maxcdn(simple-line-icons插件)。
我将所有静态文件放在src / main / resources / static
中这是我在chrome中获得的图片(方形图标+网络信息)(在新标签中打开图片链接以查看大尺寸)
显然chrome说字体真棒woff文件是用mime text / plain转移的
这是一张包含字体真棒字体dir内容的图片。原始字体大小(在顶部)和使用maven(在底部)大小过滤的相同目录略有不同
这是我的pom部分是我做maven过滤:
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<filters>
<filter>src/main/filters/${env}.properties</filter>
</filters>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>dev</id>
<activation>
<file>
<exists>dev</exists>
</file>
</activation>
<build>
<filters>
<filter>${basedir}/src/main/filters/dev.properties</filter>
</filters>
</build>
</profile>
<profile>
<id>webdev1</id>
<activation>
<file>
<exists>webdev1</exists>
</file>
</activation>
<build>
<filters>
<filter>${basedir}/src/main/filters/webdev1.properties</filter>
</filters>
</build>
</profile>
<profile>
<id>prod</id>
<activation>
<file>
<exists>prod</exists>
</file>
</activation>
<build>
<filters>
<filter>${basedir}/src/main/filters/prod.properties</filter>
</filters>
</build>
</profile>
</profiles>
问题是由于maven过滤资源,我更新了我的pom.xml以排除静态目录