[java] localhost의 Tomcat Server에 필요한 여러 포트 (8005, 8080, 8009)가 이미 사용 중입니다

Eclipse의 Tomcat에서 간단한 JSP 프로그램을 실행하려고하면 다음 오류가 발생합니다.

localhost의 Tomcat v6.0 Server에 필요한 여러 포트 (8005, 8080, 8009)가 이미 사용 중입니다. 서버가 이미 다른 프로세스에서 실행 중이거나 시스템 프로세스가 포트를 사용 중일 수 있습니다. 이 서버를 시작하려면 다른 프로세스를 중지하거나 포트 번호를 변경해야합니다.

이 문제는 어떻게 발생하며 어떻게 해결할 수 있습니까?



답변

이미 실행중인 Tomcat의 다른 인스턴스가 있습니다. http://localhost:8080웹 브라우저 로 이동 하여 Tomcat 기본 홈 페이지 또는 Tomcat 관련 404 오류 페이지가 있는지 확인할 수 있습니다. 둘 다 Tomcat이 잘 작동한다는 동일한 증거입니다. 그렇지 않은 경우 브라우저 별 HTTP 연결 시간 초과 오류 메시지가 표시됩니다.

종료해야합니다. /binTomcat 설치 폴더의 하위 폴더로 이동 하여 shutdown.bat(Windows) 또는 shutdown.sh(Unix) 스크립트를 실행하십시오 . 헛, 가까운 Eclipse에서 다음하다면 작업 관리자를 열고 모든 죽일 java및 / 또는 javaw프로세스를.

또는 실제로 어떤 이유로 Windows 서비스로 설치 한 경우 (즉, 프로덕션 용으로 개발 중일 때 도움이되지 않음) 서비스 관리자 ( 시작> 실행> services.msc )를 열고 Tomcat 서비스를 중지하십시오. 필요한 경우 Windows 서비스를 모두 제거하십시오. 개발을 위해서는 ZIP 파일만으로 충분합니다.

또는 실제로 Tomcat의 두 인스턴스를 동시에 실행하려는 경우 다른 포트에서 수신하도록 두 번째 인스턴스를 구성해야합니다. 자세한 내용은 Tomcat 설명서를 참조하십시오.


답변

kill $(ps -aef | grep java | grep apache | awk '{print $2}')
  • Eclipse를 다시 시작할 필요가 없습니다.
  • 위의 오류가 발생하면 터미널 에이 줄을 입력하십시오.
  • 다시 Eclipse에서 바람둥이를 시작하십시오.
  • Linux 기반 시스템에서만 작동합니다 (Ubuntu ..etc)

답변

Windows에서 실행중인 경우 명령 행 프롬프트에서이를 시도하십시오.

netstat -ano

사용중인 모든 포트와 해당 포트를 사용중인 프로세스의 프로세스 ID PID #이 표시됩니다. 그런 다음 Ctrl+ Alt+를 Del누르고 작업 관리자를 열어 어떤 프로세스인지 확인하십시오.

그런 다음 닫거나 중지하거나 다른 포트를 사용하도록 서버를 구성하도록 선택할 수 있습니다. 새로 선택한 포트 (8010)를 사용할 수 있는지 확인하려면 다음을 수행하십시오.

netstat -ano | grep 8010

줄을 반환하지 않으면 괜찮습니다.

포트를 변경하려면 서버보기로 이동하여 server.xml을 열고 포트를 변경하십시오. 내 항목은 다음과 같습니다.

Connector port="8010" protocol="AJP/1.3" redirectPort="8443"


답변

당신이 맥 환경에 있다면, 여기 내가 한 일이 있습니다.

터미널에서이 포트에서 실행중인 프로세스 ID를 찾으십시오 (예 : 8080).

lsof -i :8080

그것을 죽여라 :

kill -9 <PID>  

예:

다음과 같은 결과가 나타날 수 있습니다.

MacSys:bin krunal.$ lsof -i :8080

COMMAND   PID     USER   FD   TYPE     DEVICE  SIZE/OFF   NODE  NAME
java     21347   krunal  52u  IPv6      XXX      0t0      TCP  *:http-xxx (LISTEN)

그것을 죽여라 : ( kill -9 21347)


답변

이미 Eclipse에서 Tomcat 서버를 실행하는 데 사용되는 포트를 해제하는 단계

예를 들어 8080 포트를 사용한다고 가정하면 바람둥이를 실행하려면 8080을 무료로 만들어야합니다.

1 단계:

C : \ Users \ username> netstat -o -n -a | findstr 0.0 : 8080

TCP 0.0.0.0:3000 0.0.0.0:0 듣기 3116

이제 LISTENING 포트가 8080의 3116임을 알 수 있습니다.

이제 3116을 죽여야합니다

2 단계:-

C : \ 사용자 \ 사용자 이름> taskkill / F / PID 3116

3 단계 : Eclipse로 이동하여 서버를 시작하면 실행됩니다.


답변

Eclipse를 사용하는 경우 서버를 두 번 클릭하고 Tomcat 서버를 두 번 클릭하면 하나의 파일이 열립니다. 해당 파일에서 HTTP 포트를 다른 포트 번호로 변경하고 저장 ( Ctrl+ S) 한 다음 서버를 다시 시작하십시오.


답변

이클립스가 말한다면

localhost의 Tomcat v6.0 Server에 필요한 여러 포트 (8005, 8080, 8009)가 이미 사용 중입니다

이 오류는 Tomcat이 백그라운드에서 실행 중일 수 있으므로 먼저 해당 서버를 중지하십시오. 아래 세부 정보를 따르십시오.

해결책은 다음과 같습니다.

  1. “콘솔”보기를여십시오 (창->보기보기-> 콘솔).
  2. 그런 다음 Tomcat 서버를 중지하십시오.
  3. 그런 다음 “서버”보기를 열고 작동 할 서버를 시작하십시오.

감사!