저는 Mac M1환경에서 Spring Cloud 기반으로 개발중입니다.
API Gateway란, 사용자로부터 어떤 주소를 요청하게 되면 API Gateway가 받고 이곳에 등록되어있는 정보를 기반하여 Eureka 서버에 등록된 앱 이름으로 Forwarding 시켜줍니다. 즉 LoadBalancing 역할을 하는 것입니다.
그런데 이 API Gateway를 통해 Forwarding 하려고 했을 때 다음과 같은 오류가 났습니다.
Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'. Use DEBUG level to see the full stack: java.lang.UnsatisfiedLinkError: failed to load the required native library
에러메시지를 읽어보니, MacOS에서 발생하는 DNS 관련 에러였습니다.
그리고 'io.netty:netty-resolver-dns-native-macos' 라이브러리가 제대로 들어있는지 체크해보라고 친절히 알려주네요.
그래서 다음의 라이브러리를 추가하여 해결 할 수 있습니다 :)
저는 gradle 사용중이므로, build.gradle에 아래 라이브러리를 추가했습니다.
implementation 'io.netty:netty-resolver-dns-native-macos:4.1.90.Final:osx-aarch_64'