尝试在Eclipse Mars EE中执行Servlet程序时收到以下错误.
'在localhost'启动Tomcat v8.0 Sever'遇到了问题.
Tomcat v8.0 Server在localhost上所需的端口8080已在使用中.可能已经在另一个进程中运行,或者系统进程可能正在使用该端口.要启动此服务器,您需要停止其他进程或更改端口号.
我该怎么做才能阻止这个过程?我假设必须停止Tomcat 7服务器.如果我的操作系统是Windows 8,我该怎么办?
错误截图:
Gay*_*avi 33
打开 Eclipse
去 Servers panel
右键单击Tomcat Server选择Open,Overview window将出现.
打开Ports选项卡.您将获得以下内容:
Tomcat adminport
HTTP/1.1
AJP/1.3
我更改了端口号HTTP/1.1(即到8081)
您可能还必须更改Tomcat adminport(即8006)和AJP/1.3(即8010)的端口.
在浏览器中访问您的应用程序 http://localhost:8081/...
Tar*_*mar 31
对于Ubuntu/Linux
步骤1:找到使用端口8080的进程ID
netstat -lnp | grep 8080
or
ps -aef | grep tomcat
Run Code Online (Sandbox Code Playgroud)
第2步:使用上述结果中的进程ID终止进程
kill -9 process_id
Run Code Online (Sandbox Code Playgroud)
对于Windows
第1步:找到进程ID
netstat -ano | findstr 8080
Run Code Online (Sandbox Code Playgroud)
步骤2:以管理员身份打开命令提示符并终止该进程
taskkill /F /pid 1088
Run Code Online (Sandbox Code Playgroud)
在我的情况下,端口8005已经在使用,所以我使用了相同的上述步骤.
Vig*_*aja 19
如果是 MAC 用户,请转到终端并执行以下操作
lsof -i :8080 //returns the PID (process id) that runs on port 8080
kill 1234 //kill the process using PID (used dummy PID here)
lsof -i :8443
kill 4321
Run Code Online (Sandbox Code Playgroud)
默认情况下,8080 是 HTTP 端口,8443 是 HTTPS 端口。
netstat -ano | findstr 8080
taskkill /pid 21424 /F
Run Code Online (Sandbox Code Playgroud)
在命令提示符下执行上述命令first命令将查找使用端口8080或您正在使用的任何其他端口的进程的pid.并在第二个命令中写入pid而不是21424.
因为使用Command Prompt很容易解决。打开CMD并输入以下内容。
netstat -aon | find "8080"
Run Code Online (Sandbox Code Playgroud)
如果一个进程使用上面的端口,它应该返回这样的输出。
TCP xxx.xx.xx.xx:8080 xx.xx.xx.xxx:443 ESTABLISHED 2222
Run Code Online (Sandbox Code Playgroud)
最后一列值 (2222) 指的是进程 ID ( PID )。
只需按如下方式杀死它。
taskkill /F /PID 2222
Run Code Online (Sandbox Code Playgroud)
现在你可以启动你的服务器了。
解决方案
您可以使用下面的故障排除提示。
故障排除技巧#1
退出 Eclipse
打开 Web 浏览器并访问 http://localhost:8080
如果您看到“Tomcat”网页,则表示 Tomcat 正在作为 Windows 服务运行。要停止 Tomcat 作为 Windows 服务运行,请打开 Windows 控制面板。找到服务“Apache Tomcat”并将其停止。
如果您没有看到“Tomcat”网页,请停止显示的相应进程。
-- 故障排除技巧 #2 - GUI 选项
释放已用于在 Eclipse 中运行 Tomcat 服务器的端口的步骤
在 MS Windows 上,选择开始 > 所有程序 > 附件 > 系统工具 > 资源监视器
展开网络选项卡
移至侦听端口部分
查看“端口”列并滚动以查找端口 8080 的条目
选择给定的进程并删除/终止该进程
返回 Eclipse 并启动 Tomcat 服务器,它现在应该启动了。
故障排除技巧 #3 - 命令行选项
释放已用于在 Eclipse 中运行 Tomcat 服务器的端口的步骤
例如,假设使用8080端口,我们需要释放8080来运行tomcat
第一步:(打开CMD命令)
C:\Users\用户名>netstat -o -n -a | findstr 0.0:8080
TCP 0.0.0.0:3000 0.0.0.0:0 监听 3116
现在,我们可以看到8080的监听端口是3116,
我们现在需要杀死3116
第2步:
C:\Users\用户名>taskkill /F /PID 3116
步骤 3:返回 Eclipse 并启动 Tomcat 服务器,它现在应该启动了。
====
Mac/Linux 解决方案
第0步:退出Eclipse
第 1 步:打开终端窗口
步骤2:输入以下命令查找进程ID
lsof -i :8080 这将给出在端口 8080 上运行的应用程序的输出
第三步:输入以下命令杀死进程
杀死 $(lsof -t -i :8080)
步骤 4:返回 Eclipse 并启动 Tomcat 服务器,它现在应该启动了。
您可以分两步解决这个问题:
第 1 步:打开命令提示符并输入netstat -a -o -f并按回车键(上述命令将显示您机器上运行的所有进程) https://i.stack.imgur.com/m66JN.png
第 2步:输入 TASKILL /F /PID 4036 (其中 F 代表强制,PID 代表父 ID,4036 代表进程 ID 8080,这里我使用了一些随机数) https://i.stack.imgur.com /Co5Tg.png
几次尝试终止进程时,它会抛出异常,告知访问被拒绝,如上面的屏幕截图所示,此时您应该以管理员身份打开命令提示符 https://i.stack。 imgur.com/JwZTv.png
然后回来eclipse清理项目然后尝试运行项目
| 归档时间: |
|
| 查看次数: |
172751 次 |
| 最近记录: |