坑2 com.alibaba.nacos.api.exception.NacosException
Seata 使用注册中心的时候用的是Nacos,启动报错
Caused by: java.lang.ClassNotFoundException: com.alibaba.nacos.api.exception.NacosException
at java.net.URLClassLoader.findClass(URLClassLoader.java:382) ~[na:1.8.0_221]
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_221]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[na:1.8.0_221]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_221]
… 39 common frames omitted
Seata-All 在引入相应的jar包的时候都是 <scope>provide</scope>
说明我们要引入对应的依赖才行; 按需引入;
同理 如果用的是Redis的注册中心也要引入redis的客户端
com.alibaba.nacos
nacos-client
1.3.0
redis.clients
jedis
2.9.0
坑3 NotSupportYetException: not support register type: null
在引入seata的过程中,启动的时候报如下的错误
nested exception is io.seata.common.exception.NotSupportYetException:
not support register type: null
io.seata.common.exception.ShouldNeverHappenException:
Can’t find any object of class org.springframework.context.ApplicationContext
他的原因就是SpringApplicationContextProvider没有被执行到
因为我的是用seata-spring-boot-starter
方式启动的;然后又手贱配置了GlobalTransactionScanner
那么这个GlobalTransactionScanner
开始加载的时候,SpringApplicationContextProvider
并没有被执行;GlobalTransactionScanner
需要依赖于SpringApplicationContextProvider
, 所以报错了
解决方法: seata-spring-boot-starter
方式启动已经自动加载了GlobalTransactionScanner
见SeataAutoConfiguration
如果一定要自己手动加载的话 ,请加上注解
@DependsOn({BEAN_NAME_SPRING_APPLICATION_CONTEXT_PROVIDER, BEAN_NAME_FAILURE_HANDLER})
但是,没有必要手动配置
配置 GlobalTransactionScanner,使用 seata-all 时需要手动配置,使用 seata-spring-boot-starter 时无需额外处理。
坑4 can not register RM,err:can not connect to services-server.
之前一直好好的,过几天启动就报这个错了,后来我看了一下注册中心,注册了好几个ip;
都是之前注册过的,不知道为啥没有被清理;
io.seata.common.exception.FrameworkException:
can not register RM,err:can not connect to services-server.
解决方案 :把key删掉重新启动 seata-server
坑5 Could not initialize class io.seata.rm.datasource.undo.UndoLogParserFactory$SingletonHolder
接入Seata的时候 有报下面的错误
java.lang.NoClassDefFoundError:
Could not initialize class io.seata.rm.datasource.undo.UndoLogParserFactory$SingletonHolder
表面上看起来是那个异常,但是你打个断点进去查看会发现最终的异常是下面这个
java.lang.NoClassDefFoundError:
com/fasterxml/jackson/databind/ObjectMapper
解决方案:加入jackson-databind依赖就行
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
那么如何才能正确的掌握Redis呢?
为了让大家能够在Redis上能够加深,所以这次给大家准备了一些Redis的学习资料,还有一些大厂的面试题,包括以下这些面试题
-
并发编程面试题汇总
-
JVM面试题汇总
-
Netty常被问到的那些面试题汇总
-
Tomcat面试题整理汇总
-
Mysql面试题汇总
-
Spring源码深度解析
-
Mybatis常见面试题汇总
-
Nginx那些面试题汇总
-
Zookeeper面试题汇总
-
RabbitMQ常见面试题汇总
JVM常频面试:
Mysql面试题汇总(一)
Mysql面试题汇总(二)
Redis常见面试题汇总(300+题)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
一)
[外链图片转存中…(img-pI1Q8eZ5-1712881293853)]
Mysql面试题汇总(二)
[外链图片转存中…(img-14n0KSPJ-1712881293853)]
Redis常见面试题汇总(300+题)
[外链图片转存中…(img-kEM5wxyE-1712881293853)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-dDkON15v-1712881293853)]