java.net.UnknownHostException: promote.cache-dns.local: unknown error

时间:2021-08-22 12:10:38

一、错误

程序启动时提示如下错误:

java.net.UnknownHostException: promote.cache-dns.local: unknown error

直译就是:

主机名promote.cache-dns.local未知,抛出。

二、原因

1.执行hostname

得到主机名promote.cache-dns.local。

2.执行more /etc/hosts

发现没有步骤1得到的主机名。抛出也就不难理解了。

三、解决

CentOS的hostname分为三种类型:

静态的(static),瞬态的(transient),和灵活的(pretty)

执行系统命令hostname得到的是瞬态的主机名,扫描文件中得到的是静态主机名。

将这两者统一起来就可以解决问题了。

1.自定义hostname,假设myname

2.执行hostnamectl set-hostname myname

这个命令能同时修改三种类型的主机名定义。

3.修改/etc/hosts中的定义为myname

四、测试

1.重启系统,执行hostname,发现主机名为myname

2.启动程序,不报错了。