在Windows 7 64位系统上启动JBoss 7.1.1出错。

14

我正在学习如何使用 JBoss,所以我尝试着将其安装。我已经下载并解压到 C: 目录下,同时创建了环境变量,一切都正常。

但是当我运行 standalone.bat 文件时,出现了 Java 异常:请问我该怎么修复它?

16:14:04,199 INFO  [org.jboss.as.security] (ServerService Thread Pool -- 44) JBAS013101: Activating Security Subsystem
16:14:04,204 INFO  [org.jboss.as.osgi] (ServerService Thread Pool -- 39) JBAS011940: Activating OSGi Subsystem
16:14:04,209 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
16:14:04,215 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 38) JBAS011800: Activating Naming Subsystem
16:14:04,226 INFO  [org.jboss.as.configadmin] (ServerService Thread Pool -- 26) JBAS016200: Activating ConfigAdmin Subsystem
16:14:04,222 INFO  [org.jboss.as.security] (MSC service thread 1-5) JBAS013100: Current PicketBox version=4.0.7.Final
16:14:04,246 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 31) JBAS010280: Activating Infinispan subsystem.
16:14:04,270 INFO  [org.jboss.as.connector] (MSC service thread 1-3) JBAS010408: Starting JCA Subsystem (JBoss IronJacamar 1.0.9.Final)
16:14:04,332 INFO  [org.jboss.as.naming] (MSC service thread 1-16) JBAS011802: Starting Naming Service
16:14:04,337 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-5) JBAS015400: Bound mail session [java:jboss/mail/Default]
16:14:04,373 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
16:14:04,446 INFO  [org.jboss.ws.common.management.AbstractServerConfig] (MSC service thread 1-11) JBoss Web Services - Stack CXF Server 4.0.2.GA
16:14:04,665 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-15) JBAS015012: Started FileSystemDeploymentService for directory C:\jboss-as-7.1.1.Final\standalone\deployments
16:14:04,715 INFO  [org.jboss.as.remoting] (MSC service thread 1-11) JBAS017100: Listening on /127.0.0.1:4447
16:14:04,727 INFO  [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-2) Starting Coyote HTTP/1.1 on http--127.0.0.1-8080
16:14:04,767 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-12) MSC00001: Failed to start service jboss.remoting.server.management: org.jboss.msc.service.StartException in service jboss.remoting.server.management: JBAS017112: Address already in use: bind /127.0.0.1:9999
    at org.jboss.as.remoting.AbstractStreamServerService.start(AbstractStreamServerService.java:109) [jboss-as-remoting-7.1.1.Final.jar:7.1.1.Final]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.2.GA.jar:1.0.2.GA]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
    at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
Caused by: java.net.BindException: Address already in use: bind
    at sun.nio.ch.Net.bind0(Native Method) [rt.jar:1.7.0_25]
    at sun.nio.ch.Net.bind(Net.java:444) [rt.jar:1.7.0_25]
    at sun.nio.ch.Net.bind(Net.java:436) [rt.jar:1.7.0_25]
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:214) [rt.jar:1.7.0_25]
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74) [rt.jar:1.7.0_25]
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:67) [rt.jar:1.7.0_25]
    at org.xnio.nio.NioXnioWorker.createTcpServer(NioXnioWorker.java:287)
    at org.xnio.XnioWorker.createStreamServer(XnioWorker.java:135) [xnio-api-3.0.3.GA.jar:3.0.3.GA]
    at org.jboss.remoting3.remote.RemoteConnectionProvider$ProviderInterface.createServer(RemoteConnectionProvider.java:209) [jboss-remoting-3.2.3.GA.jar:3.2.3.GA]
    at org.jboss.as.remoting.AbstractStreamServerService.start(AbstractStreamServerService.java:101) [jboss-as-remoting-7.1.1.Final.jar:7.1.1.Final]
    ... 5 more

16:14:04,902 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-7) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
16:14:04,910 INFO  [org.jboss.as.controller] (Controller Boot Thread) JBAS014774: Service status report
JBAS014777:   Services which failed to start:      service jboss.remoting.server.management: org.jboss.msc.service.StartException in service jboss.remoting.server.management: JBAS017112: Address already in use: bind /127.0.0.1:9999

16:14:04,924 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
16:14:04,925 ERROR [org.jboss.as] (Controller Boot Thread) JBAS015875: JBoss AS 7.1.1.Final "Brontes" started (with errors) in 1967ms - Started 132 of 208 services (1 services failed or missing dependencies, 74 services are passive or on-demand)

1
Caused by: java.net.BindException: Address already in use: bind - keyser
你是否已经在后台运行了一个实例,而你忘记了它,或者有其他东西正在使用该端口? - user1111284
8个回答

20

11

进入standalone.xml文件,将管理端口9999更改为其他端口。当在Eclipse中运行JBoss时,若出现此异常,同样适用该方法。


我们内部的Web服务运行在9999端口,与JBOSS Remoting Management发生了冲突。从配置角度来看,这个答案非常有帮助。 - timmi4sa
@arunram - 您的解决方案对我也起作用了。谢谢! - BustedSanta

8

1) 确保您已安装 Maven,方法是在命令提示符中输入“mvn --version”。

2) 打开命令提示符并输入“netstat”。如果您像我一样有一个使用该端口的服务,则可能会看到以下内容:

enter image description here

确保您的计算机没有 NVIDIA Network Service(NvNetworkService.exe)正在作为服务运行。要检查这一点,请按 Control+Alt+Delete 并转到任务管理器。然后,在服务选项卡下,查找 NvNetworkService:

enter image description here

enter image description here 停止服务后,您可以通过打开命令提示符并再次键入“netstat”来检查端口是否被释放。此时,您不应该看到任何与 127.0.0.1:990 本地地址关联的外部地址。或者如果您像我一样,您可能会看到以下内容:

enter image description here

这里是另一个类似的例子:https://developer.jboss.org/wiki/WildFly8xjavanetBindExceptionAddressAlreadyInUseOnFreshInstallInWindowsVista78


1
在Linux Mint中,我运行了以下命令netstat -npl来查找127.0.0.1:9990的PID,然后我运行了sudo kill -TERM并解决了问题!

0

因为出现了消息提示:jboss绑定地址已被另一个进程使用。所以需要先结束该进程。

您可以按照以下步骤查找该进程:

将进程ID与程序匹配

Press CTRL+ALT+DELETE, and then click Task Manager.
Click the Processes tab.
If you do not have a PID column, click View, click Select Columns, and then click to select the PID (Process Identifier) check box.
Click the column header that is labeled "PID" to sort the process by their PIDs. You should be able to easily find the process ID and match it to the program that is listed in Task Manager.

获取有关Netstat.exe实用程序的更多信息

Click Start, and then click Run.
In the Open box, type: cmd, and then click OK.
At a command prompt, type: netstat /?.

0

For Windows:

standalone.bat

正在使用

standalone.conf.bat

在记事本中打开

添加最后两行(如下所示,即两个“更改端口设置偏移量”行)(前三行提供了放置位置的路径)

rem # Make Byteman classes visible in all module loaders
rem # This is necessary to inject Byteman rules into AS7 deployments
set "JAVA_OPTS=%JAVA_OPTS% -Djboss.modules.system.pkgs=org.jboss.byteman"

REM NEW LINE HERE Alter Port Settings Offset
set "JAVA_OPTS=%JAVA_OPTS% -Djboss.socket.binding.port-offset=1000"

0
请查找 http://<>:9999/console 以检查您的实例中是否正在运行 JBoss 管理控制台。如果是,请关闭服务器并重新部署。在像 IntelliJ 这样的 IDE 中配置 JBoss 服务器时,在大多数情况下,关机脚本可能不会被显式地调用,因此在开始启动的 JBoss 控制台可能从未被关闭,这可能会妨碍我们。希望这可以帮到您。

0

打开任务管理器,结束所有Java进程,然后再尝试运行。

谢谢


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接