首先看下你的tomcat有没有指认jdk,如果确定指认了本地的sdk文件夹请继续往后看
一般来说,遇到这个问题应该是端口号被占用了。
开始--运行--cmd 进入命令提示符 输入netstat -ano,
即可看到所有连接的PID ,之后在任务管理器中找到这个PID所对应的程序。
如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"
假如我们需要确定谁占用了我们的8080端口
1.查看所有的端口占用情况
C:\>netstat -ano
协议 本地地址 外部地址 状态 PID
TCP 127.0.0.1:1434 0.0.0.0:0 LISTENING 3236
TCP 127.0.0.1:5679 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:7438 0.0.0.0:0 LISTENING 4168
TCP 127.0.0.1:8015 0.0.0.0:0 LISTENING 1456
TCP 192.168.3.230:139 0.0.0.0:0 LISTENING 4
TCP 192.168.3.230:1957 220.181.31.225:443 ESTABLISHED 3068
TCP 192.168.3.230:2020 183.62.96.189:1522 ESTABLISHED 1456
TCP 192.168.3.230:2927 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2929 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2930 117.79.91.18:80 ESTABLISHED 4732
TCP 192.168.3.230:2931 117.79.91.18:80 ESTABLISHED 4732
2.查看指定端口的占用情况
C:\>netstat -aon|findstr "8080"
Microsoft Windows [版本 6.2.9200]
(c) 2012 Microsoft Corporation。保留所有权利。
C:\Users\WHY>netstat -aon|findstr "8080"
TCP 192.168.1.101:49242 125.39.170.17:8080 ESTABLISHED 884
P: 看到了吗,端口被进程号为884的进程占用,继续执行下面命令: (也可以去任务管理器中查看pid对应的进程)
3.查看PID对应的进程
C:\>tasklist|findstr "884"
映像名称 PID 会话名 会话# 内存使用
========================= ======== ================
Fetion.exe 884Console 0 16,064 K
P:很清楚吧,飞信占用了你的端口。
4.结束该进程
C:\>taskkill /f /t /im Fetion.exe
当然,也可以
去apache-tomcat-6.0.20\conf文件夹下搜找server.xml文件
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
把8080改了。我估计你是装了oracle,并且启动了oracle服务。
当然,也许你别的应用也占据了8080端口。我建议你改成9999或者8888这类。我习惯用8090