maven打包,部分文件没有打包到jar

826 阅读1分钟

续上篇maven依赖包找不到 juejin.cn/post/720883…

maven打包问题

背景

我们项目里面包含非Java文件,项目启动正常,代码读取非Java文件流的时候,发现获取不到文件流。

image.png

DefaultLocator.class.getResourceAsStream(ffmpegInJar)
```从当前类DefaultLocation.java目录下获取某个文件流

问题分析

1、项目里面看明明"win32/ffprobe_internal.exe"文件存在,为什么获取不到文件流呢

2、我们指定项目运行的是我们打包后的jar包里面的calss文件,然后我们去jar包里面找是否对应目录包含上述文件,结果发现文件没有打包进去(问题根本所在)。

3、排查为啥上述文件没有打包进去,看pom,maven插件怎么设置的,

image.png maven 插件默认打包策略 mvn package, 打包内容如下

image.png

如果项目中代码中存在文件夹,则不会进行打包,需要在maven 编译的时候指定目录进行打包。

image.png