我能';t在后台启动Jenkins(地址已在使用中)
我在用电脑运行詹金斯我能';t在后台启动Jenkins(地址已在使用中),jenkins,background-process,Jenkins,Background Process,我在用电脑运行詹金斯 java -jar jenkins.war -httpPort=31114 而且它启动正确,现在我尝试在后台运行它,我发现它可以使用这里提到的nohup java-jar-jenkins.war-httpPort=31114&来完成 但是,当我终止在开始时启动的会话,并尝试在同一端口的后台运行它时,会出现以下错误: SEVERE: Container startup failed java.io.IOException: Failed to start Jetty
java -jar jenkins.war -httpPort=31114
而且它启动正确,现在我尝试在后台运行它,我发现它可以使用这里提到的nohup java-jar-jenkins.war-httpPort=31114&
来完成
但是,当我终止在开始时启动的会话,并尝试在同一端口的后台运行它时,会出现以下错误:
SEVERE: Container startup failed
java.io.IOException: Failed to start Jetty
at winstone.Launcher.<init>(Launcher.java:186)
at winstone.Launcher.main(Launcher.java:354)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at Main._main(Main.java:375)
at Main.main(Main.java:151)
Caused by: java.net.BindException: Address already in use
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
at org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:339)
at org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:235)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.server.Server.doStart(Server.java:395)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at winstone.Launcher.<init>(Launcher.java:184)
... 7 more
严重:容器启动失败
java.io.IOException:无法启动Jetty
在winstone.Launcher.(Launcher.java:186)
位于winstone.Launcher.main(Launcher.java:354)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
在Main.\u Main(Main.java:375)
Main.Main(Main.java:151)
原因:java.net.BindException:地址已在使用中
位于sun.nio.ch.Net.bind0(本机方法)
位于sun.nio.ch.Net.bind(Net.java:433)
位于sun.nio.ch.Net.bind(Net.java:425)
位于sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
位于sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
位于org.eclipse.jetty.server.ServerConnector.openAcceptChannel(ServerConnector.java:339)
位于org.eclipse.jetty.server.ServerConnector.open(ServerConnector.java:307)
位于org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
位于org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:235)
位于org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
位于org.eclipse.jetty.server.server.doStart(server.java:395)
位于org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
在winstone.Launcher.(Launcher.java:184)
... 还有7个
原因:java.net.BindException:地址已在使用中
这意味着jenkins已经在给定的端口上运行,或者其他进程正在使用该端口
netstat-nltp
使用此命令检查所有打开的端口。如果jenkin allready在该端口上运行,或者其他进程正在使用该端口,则可以在其他端口上运行jenkins
下面的命令是正确的。可能是你打了两次
nohup java -jar jenkins.war -httpPort=31114 &
ps-ef | grep jenkins
。检查jenkins是否已经在运行。我尝试将命令nohup java-jar jenkins.war--httpPort=31114&
添加到一个bash文件并运行该文件,它工作了我尝试过使用不同的端口,这些端口没有出现在netstat
输出中,它给出了相同的错误。但是,当我尝试在31114端口的前地面上运行它时,它会正确启动。不知道为什么会出现错误。您可以尝试使用Jenkins.xml配置文件中的settin-port检查该特定端口是否已在使用中,方法是:netstat-tulpn | grep 31114。如果是,则使用sudo kill-9 PID终止进程并尝试重新启动。没有使用此端口的进程。请参阅此,您可能会获得一些帮助: