ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

Activiti6自学之路—— springboot在与activiti6.0整合过程出现的错误整理

Activiti6自学之路—— springboot在与activiti6.0整合过程出现的错误整理 springboot在与activiti6.0整合过程存在的一些错误我这里简单列出一些我遇到的问题一、Caused by: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxyspringboot2.0集成activiti6.0后启动报错Caused by: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy at sun.reflect.annotation.AnnotationParser.parseClassArray(AnnotationParser.java:724) ~[na:1.8.0_65] at sun.reflect.annotation.AnnotationParser.parseArray(AnnotationParser.java:531) ~[na:1.8.0_65] at sun.reflect.annotation.AnnotationParser.parseMemberValue(AnnotationParser.java:355) ~[na:1.8.0_65] at sun.reflect.annotation.AnnotationParser.parseAnnotation2(AnnotationParser.java:286) ~[na:1.8.0_65] at sun.reflect.annotation.AnnotationParser.parseAnnotations2(AnnotationParser.java:120) ~[na:1.8.0_65] at sun.reflect.annotation.AnnotationParser.parseAnnotations(AnnotationParser.java:72) ~[na:1.8.0_65] at java.lang.Class.createAnnotationData(Class.java:3521) ~[na:1.8.0_65] at java.lang.Class.annotationData(Class.java:3510) ~[na:1.8.0_65] at java.lang.Class.createAnnotationData(Class.java:3526) ~[na:1.8.0_65] at java.lang.Class.annotationData(Class.java:3510) ~[na:1.8.0_65] at java.lang.Class.getAnnotation(Class.java:3415) ~[na:1.8.0_65] at java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:258) ~[na:1.8.0_65] at java.lang.Class.isAnnotationPresent(Class.java:3425) ~[na:1.8.0_65] at org.springframework.core.annotation.AnnotatedElementUtils.hasAnnotation(AnnotatedElementUtils.java:570) ~[spring-core-5.0.9.RELEASE.jar:5.0.9.RELEASE]分析从错误提示来看提示数组越界错误当然实际怎么样需要从源码分析什么原因造成的。发现AnnotationParser.parseClassValue把异常包装成为Object实际报错是ClassNotFoundprivate static Object parseClassValue(ByteBuffer buf, ConstantPool constPool, Class? container) { int classIndex buf.getShort() 0xFFFF; try { try { String sig constPool.getUTF8At(classIndex); return parseSig(sig, container); } catch (IllegalArgumentException ex) { // support obsolete early jsr175 format class files return constPool.getClassAt(classIndex); } } catch (NoClassDefFoundError e) { return new TypeNotPresentExceptionProxy([unknown], e); } catch (TypeNotPresentException e) { return new TypeNotPresentExceptionProxy(e.typeName(), e.getCause()); } }总结springboot2.0不能与activiti6.0.0直接集成使用因为activiti6.0.0出来的时候springboot2.0还没有出来activiti6.0.0 支持springboot1.2.6以上2.0.0以下的版本。解决1将springboot2.0降级为原来的1.X版本2在springboot启动类上添加SpringBootApplication(exclude SecurityAutoConfiguration.class)如果你觉得本篇文章对你有所帮助的话麻烦请点击头像右边的关注按钮谢谢技术在交流中进步知识在分享中传播
返回列表