我是Java的新手,我正在尝试开发一个Web应用程序。 我有Windows 7 32位。我已经安装了Java 7并设置了路径和类路径。之后我安装了Tomcat 7.
当我尝试使用URL localhost:8080
打开tomcat主页时,它不会打开,Tomcat会自动停止。
请帮帮我。
答案 0 :(得分:17)
在启动tomcat之前,请确保没有其他应用程序使用端口8080。如果那不是问题,请粘贴tomcat日志。
如果要更改tomcat的默认端口,请转到tomcat文件夹并打开conf
文件夹,在其中可以看到server.xml
。在该文件中,您可以看到<Connector port=
之类的内容。更改端口值并启动tomcat。
答案 1 :(得分:11)
如果你通过eclipse启动tomcat,它也可以用不同的方式解决。
方法1:
答案 2 :(得分:5)
您的问题不在于端口8080
,而在于端口8005
。端口8005
是Tomcat的关闭端口。
可能更容易编辑8005
并将关闭端口更改为TOMCAT_DIR/conf/server.xml
8006
的内容。
<Server port="8006" shutdown="SHUTDOWN">
答案 3 :(得分:2)
对于基于* Unix的系统,您可以通过在终端中发出以下命令来检查特定应用程序使用的端口
[~/.]$ netstat -tuplen
您将获得其各自进程ID的当前持有和使用的所有端口的列表
答案 4 :(得分:1)
对于Windows用户,在命令提示符下键入netstat -an
以查看正在侦听的端口,这可能会很方便。
答案 5 :(得分:0)
我的问题已经解决了。我的日志如下所示。
SEVERE:StandardServer.await:create [localhost:8005]: java.net.BindException:无法分配请求的地址:JVM_Bind
当我尝试打开tomcat主页时,我的tomcat服务器自动停止了 URL。
所以我只是在windows-&gt; System32-&gt; drivers-&gt; etc-&gt;主机文件中进行了一些更改。 只保留127.0.0.1 localhost并删除所有其他。你的问题将得到解决。 谢谢你们的帮助:D
答案 6 :(得分:0)
如果您已启动tomcat(在linux中检查ps -ef | grep java
)并且您看到它打开了端口8080或您在server.xml中配置的端口(请查看netstat --tcp -na | grep <port number>
)但是您仍然无法在浏览器中访问它,请检查以下内容:
logs/catalina.out
。当服务器完全启动时,您应该看到类似的内容。
INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 38442 ms
如果您没有此INFO项,那么您的服务器启动尚未完成。由于SecureRandom
类负责提供随机会话ID并且可能在启动期间导致大的延迟,因此可能会出现此问题。
查看更多详细信息和解决方案here。iptables -L -n
):如果您没有进入暴露环境,可以尝试完全重置防火墙iptables -F
。但是,要注意,这样就没有保护,因此它可能是危险的。selinux
(如果您使用的是Linux)。这些是启动和运行Apache Tomcat时最遗忘和最明显的问题。
答案 7 :(得分:0)
对于mac用户
首先尝试:转到活动监视器 - &gt;搜索java并杀死实例,然后重启服务器并尝试。
第二次尝试: 检查日志文件中是否存在tomcat logs文件夹下的任何错误。
使用以下命令检查终端
中的tomcat日志tail -f {tomcatpath}/logs/catalina.out
第三次尝试: 检查节点或其他应用程序是否使用相同的端口。使用以下命令检查侦听特定端口的应用程序。您将在第二列中看到带有pid的应用列表。
lsof -i :8080 | grep LISTEN
使用以下命令
终止进程sudo kill -9 pid
答案 8 :(得分:0)
我正在使用Eclipse Java EE IDE for Web Developers. Version: Oxygen.1a Release (4.7.1a) in Windows 8.1 x64
Apache Tomcat 8.5.24
(用于测试目的)。
港口名称&amp;我的Tomcat服务器的号码是:
Tomcat admin port : 8005 HTTP/1.1 : 8081 (my Tomcat Listening Port Number) AJP/1.3 : 8009
Peoples,对于那些早期运行良好的Tomcat,以及sometimes
突然显示stopping tomcat server
后,通过按下面显示的图像按钮,或者可能是其他原因。
Either
他们连续失败start/restart
tomcat,错误地说是:
本地主机上的服务器Tomcat vX.Y服务器无法启动。
or
有时 Tomcat Server is started
,但不是在网络浏览器中显示 Tomcat Homepage
,而是在首选的网络浏览器中抛出客户端异常 HTTP Status 404 – Not Found.
。
可能有很多原因,即错误Host name
已定义,错误的Tomcat Server Locations
在eclipse中定义,项目JDK/JRE
版本与Tomcat JRE dependent version
不匹配,maven项目版本不匹配maven.compiler.source
和maven.compiler.target
版本未在属性标记mismatch version of project facet Dynamic Web Module to 2.5/3.0下定义,有时Tomcat服务器在Windows服务级别上运行,之前停止的Tomcat端口号仍在侦听,processing pid
为在日食中没有在Tomcat定义的时间范围 Timeouts Stop (in seconds): 15(by default)
中杀死,pid
仍在运行,未能在已定义的 Start (in seconds): XX
中启动,等等< / p>
在这里,我将给出决议,如何检查和终止正在运行的现有Tomcat端口号processing pid
(注意,你必须注意后效)。
在Windows中,打开命令提示符,然后按照步骤操作(我的tomcat HTTP端口为8081):
netstat -ano | findstr :8081 TCP 0.0.0.0:8081 0.0.0.0:0 LISTENING 2284 TCP [::]:8081 [::]:0 LISTENING 2284
如果有任何监听,上面的命令将列出端口监听的详细信息以及最后一行的processing pid
(这里的pid是2284)。
现在杀死正在运行的pid:
taskkill /PID 2284 /F SUCCESS: The process with PID 2284 has been terminated.
还说明了以上两个步骤:
现在,在解决了上述原因后,启动 Tomcat Server
。
答案 9 :(得分:0)
由于内存问题,可能会出现问题。 java.lang.OutOfMemoryError:Java堆空间
请验证日志文件以及与硬件(内存)有关的任何问题。
答案 10 :(得分:0)
在TomcatDirectory / logs / catalina.out中查找日志。如果日志太长,请删除catalina.out文件并重新运行该应用程序。
答案 11 :(得分:0)
1)使用Terminal(在Linux上),转到apache-tomcat-directory / bin文件夹。
2)输入./catalina.sh start
要停止Tomcat,请从bin文件夹中键入./catalina.sh
stop。由于某些原因,./startup.sh
有时不起作用。
答案 12 :(得分:0)
答案 13 :(得分:0)
在我的例子中,运行 tomcat 的端口是在 application.properties 文件中为 8000 定义的,而不是 8080。在我的例子中,它看起来与这里描述的问题相同。只是留在这里以防万一有人有类似的设置和问题! :)