我正在处理一个具有一些测试资源的Maven项目;这些资源是在<build>中指定的,有以下内容:
<testResource>
<filtering>true</filtering>
<directory>src/test/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.csv</include>
<include>**/*.zip</include>
<include>**/*.xls</include>
<include>**/*.xlsx</include>
<include>**/*.jpg</include>
<include>**/*.pdf</include>
</includes>
</testResource>当测试运行时,所有匹配这些扩展名的文件都会从src/test/resources复制到/target/test-classes中,用于测试。
问题是,PDF文件被复制为空白。所以,文件名就在那里;一个有效的PDF就在它的位置上,完全是空白的。没有内容,但它必须具有所有必要的头信息,因为它作为一个有效的PDF文件打开。
我不明白这些空白文件是从哪里来的。
示例
-https://github.com/aembleton/files/blob/master/original.pdf
原始文件
我试着做的
mvn cleansrc/test/resources顶部。这些文件被复制到它们的新位置,但仍然是空白的。src/main/resources。对于资源来说,POM也被设置为在这个目录中包括PDF。PDF再次被复制为空白,但被复制到target/classes中。
环境
system
有人知道为什么会发生这种事吗?
发布于 2020-06-01 19:48:59
试着做这样的事情:
<testResource>
<filtering>true</filtering>
<directory>src/test/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
<include>**/*.csv</include>
</includes>
</testResource>
<testResource>
<filtering>false</filtering>
<directory>src/test/resources</directory>
<includes>
<include>**/*.pdf</include>
<include>**/*.jpg</include>
<include>**/*.zip</include>
<include>**/*.xls</include>
<include>**/*.xlsx</include>
</includes>
</testResource>解释:
过滤可能破坏了PDF。过滤的工作方式是用其他值替换特定的字符串标记。解决方案是从PDF中排除过滤。
https://stackoverflow.com/questions/62138640
复制相似问题