背景:
项目中一些Hibernate实体类打包了在一个JAR包中,配置了packagesToScan扫描com.**.entity.**的方式扫描加载实体类,但在运行中发现在JAR包中的实体类没被扫描加载
原因:
打JAR包时没选择生成目录入口信息(Add directory entries).
packagesToScan是通过getResource()的方式去读取当前ClassLoader里目录信息;
而JAR若打包时不选择生成目录入口信息,则只能通过完整路径来定位class文件,不能进行目录扫描(可通过JAR命令查看导出信息"jar tvf *.jar")