我有一个需要播放WAV文件的小型Maven Java项目,所以为了简单起见,我更喜欢简单地将文件放入lr
文件夹。但是,如果使用AudioSystem.getAudioInputStream(...)
从磁盘加载的相同WAV文件然后放入Maven资源目录中,程序将抛出RIFFInvalidDataException的实例:
lr + 1
此外,如果我使用VLC尝试在src/main/resources/*
打开WAV文件,程序实际崩溃;处理原始文件没有任何问题
Maven在我的音频文件中做了什么?我使用嵌入Eclipse Neon.3 v4.6.3(版本20170314-1500)的3.3.9 / 1.7.0.20160603-1931版本,遗憾的是无法尝试使用"正确的" Eclipse之外的Maven实例因为构建取决于a nightmare hybrid of an old Eclipse project including both Java source and pre-compiled DLLs and a Java-only Maven project。
答案 0 :(得分:1)
你可能有过滤有副作用。根据资源插件的文档,您可以禁用这样的过滤:
<project>
...
<build>
...
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
</resource>
...
</resources>
...
</build>
...
</project>
要查看文档,请查看here
答案 1 :(得分:1)
可能是maven资源插件在将.wav文件复制到目标目录时对其进行过滤。查看https://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html。您可能必须添加排除项以确保不对该特定文件进行过滤。