Spring 5.x 兼容velocity后一直报rg.apache.velocity.exception.ResourceNotFoundException: Unable to find resource 'org/springframework/web/servlet/view/velocity/spring.vm'
找不到spring.vm文件问题。废话不多说,直接上干货。
解决方案如下:
1.查看项目或velocity包中存在spring.vm文件。
获取spring.vm文件方法:在原有的spring4.x版本中根据目录copy出spring.vm文件。
---------分割线Start---------
这一步是因为缺少spring.vm文件,如果和我的问题一样后面直接按照步骤操作就可以了。
---------分割线End--------
2.查看项目target/classes文件夹中是否编译出spring.vm文件。
如果未解析出spring.vm文件请按照以下步骤:
1).在resources目录下创建static(任意包名)
2).把spring.xml文件放入static(创建的包名)中.
3).打开【VelocityConfigurer.java】文件,找到"SPRING_MACRO_LIBRARY"变量名,把参数改成static/spring.vm(创建包名/spring.vm)
这样就可以读取到spring.vm文件了。
---------分割线Start---------
这一步主要是确认程序是否可以找到target目录下的spring.vm文件。
---------分割线End--------
总结:如果升级之前程序可以正常运行,但是升级之后报这个错。或者和本人问题一样那就什么配置都不需要改,直接按照上述步骤操作即可。不然大概率会改出问题。