前言
这两天准备用Spring Cloud Gateway 搭建网关服务,之前用过Netflix Zuul 两者区别不大,但是Gateway毕竟是要渠道Zuul。在搭建过程中遇到了非常诡异的问题,废话不多数看下面的问题。
启动的时候报dyld: lazy symbol binding failed: Symbol not found: _clock_gettime
具体问题如下:
dyld: lazy symbol binding failed: Symbol not found: _clock_gettime Referenced from: /private/var/folders/vp/gmrk_xcs4lg5g04rb8b_mptc0000gp/T/libnetty_transport_native_kqueue_x86_648978490352027868074.dylib Expected in: /usr/lib/libSystem.B.dylibdyld: Symbol not found: _clock_gettime Referenced from: /private/var/folders/vp/gmrk_xcs4lg5g04rb8b_mptc0000gp/T/libnetty_transport_native_kqueue_x86_648978490352027868074.dylib Expected in: /usr/lib/libSystem.B.dylib
POM引用
org.springframework.cloud spring-cloud-starter-netflix-eureka-client org.springframework.boot spring-boot-starter-actuator org.springframework.cloud spring-cloud-starter-netflix-hystrix org.springframework.cloud spring-cloud-starter-gateway org.apache.rocketmq rocketmq-client 4.3.0
问题排查
spring-cloud-starter-gateway本身没有问题,但是引入rocketmq后就会出现这个问题,开始到网上找各种方法。
gitee 上这个项目有小伙伴提到相同的问题,有提出是依赖包的问题。小编排查后依然不能解决。
继续找原因
看到发生该问题是在安装软件和OS系统上才会有这个问题,那是不是要升级一下我的MAC系统?
经过一翻折腾升级macOS系统升级到了最新版本,再尝试了一下就解决了。
总结
其实这个问题如果在公司有小伙伴用的是Windows或者其他操作系统应该很好解决,这次疫情很严重后面要在家办公了。最后祝愿所有的小伙伴及家人朋友能够健健康康、开开心心的度过这次危机。
閱讀更多 IT實戰聯盟 的文章