早上起來,myeclipse寫了個servlet
然後Chrome運行http://localhost:8080/一直跳出登錄Tomcat用戶名密碼的窗口。
我以前跑的項目並沒有要求登錄,那就登錄唄。
結果去tomcat-user.xml下配置了用戶名和密碼還是不行,輸入用戶名密碼根本沒反應。
回myeclipse看了下console,,,發現報錯了
[啓動Tomcat一定要看有沒有報錯,養成好習慣]
嚴重: Failed to initialize end point associated with ProtocolHandler
[“http-nio-8080”] java.net.BindException: Address already in use: bind
說是端口衝突問題,我也是醉了。
找一下佔用了端口
cmd,netstat -ano|findstr '8080'
發現 一個PID爲13024的佔用了8080的端口,就是這傢伙
原來是前幾天裝了oracle造成的
解決:
– 把HTTP/WEBDAV端口從8080改到8081
SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
'/xdbconfig/sysconfig/protocolconfig/httpconfig/http-port/text()',8081))
/
– 把FTP端口從2100改到2111
SQL> call dbms_xdb.cfg_update(updateXML(dbms_xdb.cfg_get(),
'/xdbconfig/sysconfig/protocolconfig/ftpconfig/ftp-port/text()',2111))
/
SQL> commit;
SQL> exec dbms_xdb.cfg_refresh;
– 檢查修改是否已經成功
SQL> select dbms_xdb.cfg_get from dual;
我覺得OK。。。
想想這一上午,各種shutdown.bat,start.bat;修改端口 8080 ;修改 shutdown端口 8005;修改 Tomcat用戶名密碼。。。等等
真是一頓操作,以後再遇到這種問題,一定要又效率的解決。
善於解決問題,也是程序員必備的良好素質。