本人在学习使用Themeleaf模板,直接上手项目,然后想在themeleaf上使用shiro标签实现权限控制,然后踩到这个坑,上网一查这方面的知识少之又少。踩下去两天才找到解决方法。 Caused by: java.lang.ClassNotFoundException: org.thymeleaf.dialect.AbstractProcessorDialect at java.net.URLClassLoader$1.run(URLClassLoader.java:366)at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 43 more 我的maven上springboot是1.5.2.RELEASE, thymeleaf依赖和shiro整合依赖(整合依赖版本是我按网上教程找来的)
ClassNotFoundException:org.thymeleaf.dialect.AbstractProcessorDialect 找不到类AbstractProcessorDialect(自定义标签抽象类,需要自定义标签需要继承此类,重写他的方法) @Override public Set<IProcessor> getProcessors(String dialectPrefix) {} 而这里的问题出在:使用的SpringBoot1.5.2.RELEASE版本集成Thymeleaf时,它使用的版本是2.1.5.RELEASE,而在这个版本中没有AbstractProcessorDialect类。 解决方法一:可以把Thymeleaf版本更改为3.0.7.RELEASE <thymeleaf.version>3.0.7.RELEASE</thymeleaf.version>再加上<thymeleaf-layout-dialect.version>2.2.2</thymeleaf-layout-dialect.version> 解决方法二:还可以把thymeleaf-extras-shiro的版本改为1.2.1 |
|
来自: 极风狼 > 《springboot》