当我尝试启动JBoss时,我收到以下错误
10:10:43,298 INFO [WebService] Using RMI server codebase: http://127.0.0.1:8083/
10:10:43,938 ERROR [AbstractKernelController] Error installing to Start: name=jboss:service=Naming state=Create mode=Manual requiredState=Installed
java.rmi.server.ExportException: Port already in use: 1098; nested exception is:
java.net.BindException: Address already in use: JVM_Bind
at sun.rmi.transport.tcp.TCPTransport.listen(TCPTransport.java:249)
at sun.rmi.transport.tcp.TCPTransport.exportObject(TCPTransport.java:184)
at sun.rmi.transport.tcp.TCPEndpoint.exportObject(TCPEndpoint.java:382)
at sun.rmi.transport.LiveRef.exportObject(LiveRef.java:116)
at sun.rmi.server.UnicastServerRef.exportObject(UnicastServerRef.java:180)
at java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:293)
at java.rmi.server.UnicastRemoteObject.exportObject(UnicastRemoteObject.java:256)
然而,当我试图查看正在收听哪些端口时。我没看到那个港口!
H:\>netstat -a -n -o
Active Connections
Proto Local Address Foreign Address State PID
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 824
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:1521 0.0.0.0:0 LISTENING 2036
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 752
TCP 0.0.0.0:7717 0.0.0.0:0 LISTENING 2944
TCP 0.0.0.0:8081 0.0.0.0:0 LISTENING 1564
TCP 0.0.0.0:31038 0.0.0.0:0 LISTENING 1436
TCP 127.0.0.1:1038 0.0.0.0:0 LISTENING 2036
TCP 127.0.0.1:1052 0.0.0.0:0 LISTENING 2620
TCP 127.0.0.1:5998 127.0.0.1:5999 ESTABLISHED 4036
TCP 127.0.0.1:5999 127.0.0.1:5998 ESTABLISHED 4036
TCP 127.0.0.1:6000 127.0.0.1:6001 ESTABLISHED 4036
TCP 127.0.0.1:6001 127.0.0.1:6000 ESTABLISHED 4036
TCP 142.174.27.74:139 0.0.0.0:0 LISTENING 4
TCP 142.174.27.74:13148 142.174.12.84:445 ESTABLISHED 4
TCP 142.174.27.74:13253 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13255 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13258 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13259 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13260 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13261 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13262 142.174.134.33:8080 ESTABLISHED 4036
TCP 142.174.27.74:13263 142.174.134.33:8080 ESTABLISHED 4036
UDP 0.0.0.0:445 *:* 4
UDP 0.0.0.0:8081 *:* 1564
UDP 0.0.0.0:8082 *:* 1564
UDP 0.0.0.0:19508 *:* 1244
UDP 127.0.0.1:123 *:* 948
UDP 127.0.0.1:1025 *:* 580
UDP 127.0.0.1:1046 *:* 524
UDP 127.0.0.1:1056 *:* 784
UDP 127.0.0.1:1213 *:* 2888
UDP 127.0.0.1:1257 *:* 2404
UDP 127.0.0.1:2172 *:* 3736
UDP 127.0.0.1:2310 *:* 2188
UDP 142.174.27.74:123 *:* 948
UDP 142.174.27.74:137 *:* 4
UDP 142.174.27.74:138 *:* 4
H:\>
任何想法?
谢谢,
担
答案 0 :(得分:6)
尝试TCPView(TCPView v3.05)。我得到了这个“已经在使用的端口”,并且TCPView 总是通常会抓住罪魁祸首。
答案 1 :(得分:3)
转到conf文件夹下的jboss-service.xml,将RMI的端口从1098更改为8099
8099重启服务器。
答案 2 :(得分:2)
我们不久前遇到过这个问题,不仅仅是JBoss,还有MySQL。 我在这里更详细地写了这篇文章:
Windows TCP Port Conflicts above 1024
归结为Windows使用1000到5000之间的端口范围来表示所谓的“短暂”端口。这意味着它为请求随机端口的进程分配此范围内的端口。
在Windows 2000/2003服务器安装以及Windows XP Pro上,您可以为应用程序保留端口范围(即使它们仅覆盖单个端口)。实际上,它们不是针对任何特定内容保留的,而是仅从动态分配中排除。为此,请创建或编辑以下注册表值(类型REG_MULTI_SZ/Multi-String Value
):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\ReservedPorts
在此值中,使用xxxx指定格式为xxxx-yyyy的端口范围,yyyy是要保留的范围的最低和最高端口。要保留单个端口,只需对两者使用相同的值(例如1099)。
答案 3 :(得分:2)
我猜这个端口还在使用中。你可以使用:
找到它netstat -ao
和
netstat -b
如果您无法使用该端口,请在以下XML文件中找到另一个端口并进行更改:
conf/bindings-beans/META-INF/bindings-jboss-beans.xml
JBoss 5有一个新的ServiceBindingManager,它使用bean注入在运行时分配端口。在这里更改端口可能会为您解决问题。 您还可以使用不同的端口配置,并通过因子覆盖端口。
答案 4 :(得分:2)
基于Sam引用的文件中提到的端口以及Daniel Schneller引用的注册表项,以下内容应该为JBoss EAP 5提供技巧:
1090-1090 1098-1102 1161-1162 3528-3528 4444-4448 4457-4457 4712-4714 5445-5446 8080-8083 8443-8443
在.reg文件中翻译:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"ReservedPorts"=hex(7):31,00,30,00,39,00,30,00,2d,00,31,00,30,00,39,00,30,00,\
20,00,31,00,30,00,39,00,38,00,2d,00,31,00,31,00,30,00,32,00,20,00,31,00,31,\
00,36,00,31,00,2d,00,31,00,31,00,36,00,32,00,20,00,33,00,35,00,32,00,38,00,\
2d,00,33,00,35,00,32,00,38,00,20,00,34,00,34,00,34,00,34,00,2d,00,34,00,34,\
00,34,00,38,00,20,00,34,00,34,00,35,00,37,00,2d,00,34,00,34,00,35,00,37,00,\
20,00,34,00,37,00,31,00,32,00,2d,00,34,00,37,00,31,00,34,00,20,00,35,00,34,\
00,34,00,35,00,2d,00,35,00,34,00,34,00,36,00,20,00,38,00,30,00,38,00,30,00,\
2d,00,38,00,30,00,38,00,33,00,20,00,38,00,34,00,34,00,33,00,2d,00,38,00,34,\
00,34,00,33,00,00,00,00,00
答案 5 :(得分:2)
根本原因是JBOSS未正确关闭。 如果您使用的是Windows, 去任务管理器并杀死JBOSS进程。
答案 6 :(得分:2)
在注册表中保留端口1098-1099。 如果正在运行,请重新启动oracle服务,然后启动JBOss。
答案 7 :(得分:1)
如果您的默认IP地址由于某些问题而更改,则Jboss也会抛出此错误 手段 121. 。 .89到121. 。 .90只需检查并用更新的IP地址替换它。它会起作用。