1、异常描述:
Error creating bean with name 'shiroFilterFactoryBean' defined in class path resource [com/ruoyi/framework/config/ShiroConfig.class]
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'shiroCasConfig':
Injection of autowired dependencies failed;
nested exception is java.lang.IllegalArgumentException:
Could not resolve placeholder 'shiro.session.expireTime' in value "${shiro.session.expireTime}"

2、问题原因:
建立新的子模块后,会将maven中原来的jar打包方式自动改为pom打包,在删除的时候没有删除干净。
pom模式的打包方式不会将静态资源一并被编译进target中,所以会报找不到静态文件的问题。

3、解决方法:
将maven中的<packaging>pom</packaging>改为<packaging>jar</packaging>

4、该异常产生原因一般会有3种情况:
- 常见的就是配置文件有问题,比如说yml或properties文件配置有问题。
- 引入的依赖有问题
- 环境方面问题,比如说jdk不一致或是idea中的iml文件的问题
- 错误新建子模块后没有删除干净被修改的地方
文章讲述了在SpringBoot应用中遇到的Shiro配置异常,具体为BeanCreationException,原因是配置文件中的shiro.session.expireTime占位符未正确解析。问题源于创建子模块后,Maven默认打包方式变为pom,导致静态资源未被编译进target目录。解决方案是将子模块的packaging由pom改为jar,确保静态资源被正确打包。
1763

被折叠的 条评论
为什么被折叠?



