我在 Java 6/Websphere 8.5 上遇到套接字绑定错误(Liberty 配置文件,Websphere 的精简可用版本)。当再次立即杀死并启动应用程序服务器时,我得到:
[错误] CWWKO0221E: TCP 通道 defaultHttpEndpoint 初始化未成功。主机 * 和端口 9988 的套接字绑定未成功。该端口可能已在使用中。
这是因为 Java 或 WAS 都没有正确释放 IPv6 套接字。
但是,这是一个障碍:当我通过strace
(使用 -f 选项来跟踪子进程)运行 WLP 时,不会发生绑定错误。
到底是怎么回事?为什么我不能通过这个捕捉到这个strace
?
我可以通过指定来解决这个问题soReuseAddress
,但这里让我担心的是为什么/如何通过strace
(即不依赖愚蠢的运气)来捕捉这个问题以及为什么它不起作用?