java 端口_java – 如何找到可用的端口?

如果你不介意使用的端口,请指定一个0到

ServerSocket constructor的端口,它将在任何空闲端口上侦听。

ServerSocket s = new ServerSocket(0);

System.out.println("listening on port: " + s.getLocalPort());

如果你想使用一组特定的端口,那么最简单的方法是迭代它们直到一个工作。这样的东西:

public ServerSocket create(int[] ports) throws IOException {

for (int port : ports) {

try {

return new ServerSocket(port);

} catch (IOException ex) {

continue; // try next port

}

}

// if the program gets here, no port in the range was found

throw new IOException("no free port found");

}

可以这样使用:

try {

ServerSocket s = create(new int[] { 3843, 4584, 4843 });

System.out.println("listening on port: " + s.getLocalPort());

} catch (IOException ex) {

System.err.println("no available ports");

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值