Linux环境部署 java.net.UnknownHostException: a1.easemob.com

一. 问题描述

在Linux环境下部署项目,项目正常启动后,请求API接口报错(发版前本地环境调试一切正常,没有报错情况)
日志详情:

java.net.UnknownHostException: a1.easemob.com: System error
2020/10/09-14:15:23 [http-nio-80-exec-4] INFO  org.apache.http.impl.execchain.RetryExec- I/O exception (java.n                          et.UnknownHostException) caught when processing request to {
    
    s}->https://a1.easemob.com:443: a1.easemob.com: Sy                          stem error
2020/10/09-14:15:23 [http-nio-80-exec-4] INFO  org.apache.http.impl.execchain.RetryExec- Retrying request to {
    
                              s}->https://a1.easemob.com:443
2020/10/09-14:15:23 [http-nio-80-exec-4] INFO  com.inspur.vista.tyjr.common.api.config.RestTemplateConfig- Ret                          ry request, execution count: 2, exception: {
    
    }
java.net.UnknownHostException: a1.easemob.com
        at java.net.InetAddress.getAllByName0(InetAddress.java:1281)
        at java.net.InetAddress.getAllByName(InetAddress.java:1193)
        at java.net.InetAddress.getAllByName(InetAddress.java:1127)
        at org.apache.http.impl.conn.SystemDefaultDnsResolver.resolve(SystemDefaultDnsResolver.java:45)
        at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOp                          erator.java:112)
......

二. 问题分析

在接口调用时,项目没有找到对应的映射名称,也就是说,访问的url不是一个ip地址,所以在映射时产生错误。
具体解释可以查看:java.Net.UnknownHostException异常处理方法,这篇博客说的很详细。

三. 解决办法

  1. 现在系统中对需要访问的域名进行ping命令,获取到对应的ip:
    在这里插入图片描述
  2. 获取到ip后,将ip配置到部署环境的/etc/hosts 文件中,修改完成后,hosts文件修改完就及时生效,重新启动项目就可以解决问题
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/zhuzicc/article/details/108992738