WildFly 开始出现错误:java.net.BindException:地址已在使用中

Posted

技术标签:

【中文标题】WildFly 开始出现错误:java.net.BindException:地址已在使用中【英文标题】:WildFly started with errors: java.net.BindException: Address already in use 【发布时间】:2015-11-08 04:14:15 【问题描述】:

当我在 Eclipse 中启动 WildFly 时,出现以下错误:

22:03:42,430 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-2) MSC000001: Failed to start service jboss.serverManagement.controller.management.http: org.jboss.msc.service.StartException in service jboss.serverManagement.controller.management.http: WFLYSRV0083: Failed to start the http-interface service
    at org.jboss.as.server.mgmt.UndertowHttpManagementService.start(UndertowHttpManagementService.java:269)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: java.net.BindException: Address already in use: bind
    at org.jboss.as.domain.http.server.ManagementHttpServer.start(ManagementHttpServer.java:160)
    at org.jboss.as.server.mgmt.UndertowHttpManagementService.start(UndertowHttpManagementService.java:235)
    ... 5 more
Caused by: java.net.BindException: Address already in use: bind
    at sun.nio.ch.Net.bind0(Native Method)
    at sun.nio.ch.Net.bind(Net.java:437)
    at sun.nio.ch.Net.bind(Net.java:429)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67)
    at org.xnio.nio.NioXnioWorker.createTcpConnectionServer(NioXnioWorker.java:182)
    at org.xnio.XnioWorker.createStreamConnectionServer(XnioWorker.java:243)
    at org.jboss.as.domain.http.server.ManagementHttpServer.start(ManagementHttpServer.java:147)
    ... 6 more

22:03:42,431 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-1) WFLYJCA0001: Bound data source [java:jboss/datasources/ExampleDS]
22:03:42,551 INFO  [org.jboss.ws.common.management] (MSC service thread 1-7) JBWS022052: Starting JBoss Web Services - Stack CXF Server 5.0.0.Final
22:03:43,287 INFO  [javax.enterprise.resource.webcontainer.jsf.config] (ServerService Thread Pool -- 61) Mojarra 2.2.11-jbossorg-1 20150505-1501 für Kontext '/JSF Hello World' wird initialisiert.
22:03:43,721 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 61) WFLYUT0021: Registered web context: /JSF Hello World
22:03:43,727 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("core-service" => "management"),
    ("management-interface" => "http-interface")
]) - failure description: "WFLYCTL0080: Failed services" => "jboss.serverManagement.controller.management.http" => "org.jboss.msc.service.StartException in service jboss.serverManagement.controller.management.http: WFLYSRV0083: Failed to start the http-interface service
    Caused by: java.lang.RuntimeException: java.net.BindException: Address already in use: bind
    Caused by: java.net.BindException: Address already in use: bind"
22:03:43,758 INFO  [org.jboss.as.server] (ServerService Thread Pool -- 34) WFLYSRV0010: Deployed "JSF Hello World.war" (runtime-name : "JSF Hello World.war")
22:03:43,786 INFO  [org.jboss.as.controller] (Controller Boot Thread) WFLYCTL0183: Service status report
WFLYCTL0186:   Services which failed to start:      service jboss.serverManagement.controller.management.http: org.jboss.msc.service.StartException in service jboss.serverManagement.controller.management.http: WFLYSRV0083: Failed to start the http-interface service

22:03:43,884 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0063: Http management interface is not enabled
22:03:43,884 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0054: Admin console is not enabled
22:03:43,884 ERROR [org.jboss.as] (Controller Boot Thread) WFLYSRV0026: WildFly Full 9.0.1.Final (WildFly Core 1.0.1.Final) started (with errors) in 12675ms - Started 270 of 455 services (2 services failed or missing dependencies, 221 services are lazy, passive or on-demand)

我该如何解决这个问题?

端口 80 上有一些连接。我是否必须使用 whois 检查所有 IP 地址才能识别我计算机上已经使用端口 80 的应用程序?

C:\Users\me7D-User>netstat -aon | findstr "80"
  TCP    0.0.0.0:8092           0.0.0.0:0              ABHÖREN         4
  TCP    127.0.0.1:8080         0.0.0.0:0              ABHÖREN         8868
  TCP    127.0.0.1:8080         127.0.0.1:59241        HERGESTELLT     8868
  TCP    127.0.0.1:59177        127.0.0.1:8080         WARTEND         0
  TCP    127.0.0.1:59180        127.0.0.1:59181        HERGESTELLT     8868
  TCP    127.0.0.1:59181        127.0.0.1:59180        HERGESTELLT     8868
  TCP    127.0.0.1:59230        127.0.0.1:8080         WARTEND         0
  TCP    127.0.0.1:59241        127.0.0.1:8080         HERGESTELLT     11024
  TCP    192.168.0.100:59166    173.194.113.41:80      WARTEND         0
  TCP    192.168.0.100:59249    104.16.102.85:80       HERGESTELLT     8392
  TCP    192.168.0.100:59250    216.58.211.42:80       HERGESTELLT     8392
  TCP    192.168.0.100:59252    103.31.7.34:80         HERGESTELLT     8392
  TCP    192.168.0.100:59253    216.58.211.42:80       WARTEND         0
  TCP    192.168.0.100:59254    190.93.247.58:80       HERGESTELLT     8392
  TCP    192.168.0.100:59255    190.93.247.58:80       HERGESTELLT     8392
  TCP    192.168.0.100:59256    190.93.247.58:80       WARTEND         0
  TCP    192.168.0.100:59257    190.93.247.58:80       HERGESTELLT     8392
  TCP    192.168.0.100:59258    190.93.247.58:80       HERGESTELLT     8392
  TCP    192.168.0.100:59259    190.93.247.58:80       HERGESTELLT     8392
  TCP    192.168.0.100:59264    104.16.12.8:80         HERGESTELLT     8392
  TCP    192.168.0.100:59265    88.221.92.32:80        HERGESTELLT     8392
  TCP    192.168.0.100:59266    88.221.92.176:80       HERGESTELLT     8392
  TCP    192.168.0.100:59267    173.194.113.36:80      HERGESTELLT     8392
  TCP    192.168.0.100:59268    104.16.12.8:80         WARTEND         0
  TCP    192.168.0.100:59269    88.221.92.32:80        WARTEND         0
  TCP    192.168.0.100:59270    88.221.92.176:80       WARTEND         0
  TCP    192.168.0.100:59271    54.204.10.55:80        HERGESTELLT     8392
  TCP    192.168.0.100:59272    54.204.10.55:80        WARTEND         0
  TCP    192.168.0.100:59273    95.172.94.34:80        WARTEND         0
  TCP    192.168.0.100:63749    216.34.181.97:80       SCHLIESSEN_WARTEN    1680

  TCP    192.168.0.100:63812    216.34.181.97:80       SCHLIESSEN_WARTEN    1680

  TCP    [::]:8092              [::]:0                 ABHÖREN         4
  UDP    127.0.0.1:49880        *:*                                    3272
  UDP    [fe80::100:7f:fffe%11]:54045  *:*                                    49
56
  UDP    [fe80::5efe:192.168.0.100%15]:54045  *:*
     4956
  UDP    [fe80::5efe:192.168.137.1%14]:54045  *:*
     4956
  UDP    [fe80::a9:d477:68a9:2472%10]:1900  *:*
   3364
  UDP    [fe80::a9:d477:68a9:2472%10]:54045  *:*
    4956
  UDP    [fe80::a9:d477:68a9:2472%10]:56718  *:*
    3364
  UDP    [fe80::3d9d:1f6f:e25:35b%13]:53  *:*
 1292
  UDP    [fe80::3d9d:1f6f:e25:35b%13]:546  *:*
  1100
  UDP    [fe80::3d9d:1f6f:e25:35b%13]:1900  *:*
   3364
  UDP    [fe80::3d9d:1f6f:e25:35b%13]:54045  *:*
    4956
  UDP    [fe80::3d9d:1f6f:e25:35b%13]:56719  *:*
    3364

这些都在端口 8080 上。

C:\Users\me7D-User>netstat -aon | findstr "8080"
  TCP    127.0.0.1:8080         0.0.0.0:0              ABHÖREN         7500
  TCP    127.0.0.1:8080         127.0.0.1:60095        HERGESTELLT     7500
  TCP    127.0.0.1:8080         127.0.0.1:60096        HERGESTELLT     7500
  TCP    127.0.0.1:60035        127.0.0.1:8080         WARTEND         0
  TCP    127.0.0.1:60095        127.0.0.1:8080         HERGESTELLT     11024
  TCP    127.0.0.1:60096        127.0.0.1:8080         HERGESTELLT     11024

此错误始终存在,如果我重新启动计算机也是如此。

【问题讨论】:

访问 localhost:8080 说:“您的 WildFly 9 正在运行。” 那么,你有两个?或者,您也手动将 WildFly 安装为 Windows 服务? 没有。我刚刚在 Windows 上的 Eclipse 中添加了 WildFly 作为服务器。我之前把rar文件解压成C:。 【参考方案1】:

检查您的计算机上是否运行了名为 NVIDIA 网络服务 的服务。

巧合的是,这个 NVIDIA 服务9990 端口 上运行,用于 Wildfly 的管理控制台

就我而言,它只是停止此服务并重新启动 Wildfly 服务器。

【讨论】:

这行得通,我有窗口 10 NVIDIA 950M 作为显卡。 localhost:9990/console/App.htm 我想知道 NVidia 如何决定这样的端口。这是最常用的端口,特别是如果您是开发人员(如我)。我想重新分配...也许有一个 nvidia 服务的配置.... 嗨,马克,好问题,我不知道为什么要使用如此常用的端口!所以,是的,我愿意...我和您一样也是开发人员,但是...实际上我没有调查 NVIDIA 的任何配置(文件)来检查是否可以修改此端口。【参考方案2】:

WildFly 正在尝试使用您 PC 中已在使用的端口。检查您的日志:“Caused by: java.net.BindException: Address already in use: bind

检查 WildFly 正在使用的端口,然后您可以检查此端口是否正在用于任何其他应用程序,它可能是 WildFly 的另一个实例,但也可以是任何其他应用程序。例如,端口 80 可以是 apache/IIS 或在您的 PC 中运行的任何其他 Web 服务器。

WildFly(和 JBOSS)通常默认使用 8080 并且看起来您有一个应用程序在此端口进行侦听,WildFly 也为应用程序服务器需要的其他协议和管理使用更多端口。使用命令 netstat 您可以检查其他应用程序正在使用这些端口,例如(对于 8080 端口)您可以使用以下命令:

netstat -aon | findstr :8080

如果你想做一个快速测试,你可以将此参数传递给 WildFly “-Djboss.socket.binding.port-offset=2000” 这将增加 JBOSS/WildFly 使用的所有端口2000(或任何其他值),例如,如果您的 WildFly 在“localhost:8080/your-context”中运行,现在将是“localhost:10080/your-context >”。

如果您的 JBOSS/WildFly 在端口 80 中运行,您也可以使用此参数来测试另一个端口,例如“-Djboss.socket.binding.port-offset= 10000”也会给你带来10080端口。

祝你好运;)

【讨论】:

在我从 Eclipse 开始 wildfly 之前没有任何连接。然后我可以看到三个连接。当我停止 wildfly 时,其中两个离开了。【参考方案3】:

此端口已被 NVIDIA 或其他进程使用。解决此问题的另一种方法是更改​​默认管理端口。

要更改端口,您必须修改位于standalone\configuration 文件夹中的standalone.xml。找到端口9990。现在将偏移量从 0 更改为 1 jboss.socket.binding.port-offset:1

它将默认端口值从9990增加到9991

【讨论】:

【参考方案4】:

当您尝试启动 Wildfly 时,它已经在运行。检查您的进程查看器,它可能显示为 wildfly,也可能显示为“java”。

您可以将它作为服务运行,也可以从命令行运行它,Eclipse 可能已启动它但不再意识到它。

【讨论】:

如果我启动 Eclipse,JBoss 正在运行。【参考方案5】:

只需通过 http://localhost:8080 在浏览器中检查我的(默认)端口,很明显这是我安装/测试的名为 Intrexx 的服务/应用程序(顺便说一句。使用 Tomcat 应用程序服务器)。 卸载后一切正常。

【讨论】:

以上是关于WildFly 开始出现错误:java.net.BindException:地址已在使用中的主要内容,如果未能解决你的问题,请参考以下文章

错误 404 - 未找到 Wildfly

WildFly 12:错误 jboss.remoting.management.channel.registry

Wildfly + Eclipse 部署扫描程序

wildfly不会因为新的缺失/不满足的依赖性而开始

Wildfly 上的轴 1

WildFly 服务器发出重复数据源