6

InetAddress不提供任何静态方法或构造函数来获取InetAddress通配符 IP 0.0.0.0 。唯一的办法是InetAddress.getByName("0.0.0.0")

AvoidUsingHardCodedIP但是如果我们通过硬编码的 IP,PMD 会给出。有没有办法InetAddress使用通配符 IP 但无需对 IP 进行硬编码?

4

2 回答 2

13

我知道这有点老了。但我处于同样的情况:

InetAddress wildCard = new InetSocketAddress(0).getAddress();

成功了。主要构造函数

public InetSocketAddress(InetAddress addr, int port)

将被调用

InetAddress.anyLocalAddress() 

不需要端口,所以我选择了 0。

于 2013-09-26T22:59:58.813 回答
0

使用InetAddress.getByAddress(new byte[] {0,0,0,0})将起作用。但不要忘记检查 listen on ipv4or ipv6

于 2021-06-22T19:14:05.053 回答