Caused by: java.net.SocketException: Bad address: listen

!!!!!!
Spring 관련 프로젝트를 진행하려는데 몇 달 전부터 간헐적으로 해당 오류가 발생해 의욕을 잃고 넘어간 적이 많았다. . ...

근데 드디어 문제를 해결했다...!!! Gradle 데몬 죽이기, 캐시 초기화, hosts 파일 수정, 데몬 비활성화 다 아니었고

VMware 때문이었다.
사실 이전에 VMware가 있을 때 문제가 없었어서 원인이 아닐 줄 알았는데 ....지피티 말로는 VMware 설치만 하고 안쓰거나 최근에 네트워크 상태나 JVM 환경이 조금만 바뀌어도 갑자기 오류가 나타날 수 있다고 한다.
그래서
GPT가 알려준 해결 방법 중 나는 2번 방법 가상 네트워크 비활성화를 시켜줬다.
해결 방법 (추천 순서)
1️⃣ JVM을 IPv4만 사용하게 만들기
프로젝트 루트에
gradle.properties
내용 추가
org.gradle.jvmargs=-Djava.net.preferIPv4Stack=true
이게 가장 효과적인 해결 방법입니다.
2️⃣ 사용 안 하는 가상 네트워크 잠시 비활성화
Windows 기준
제어판
→ 네트워크 상태 및 작업 보기
→ 네트워크 상태 및 작업 보기
→ 어댑터 설정 변경 (나는 VMware Network Adapter VMnet1, VMnet8이 활성화되어 있었다.)
→ 사용 안함 (VMware Network Adapter 비활성화)
→ 사용 안함 (VMware Network Adapter 비활성화)
예)
- VirtualBox Host Only
- VMware VMnet1
다시 빌드를 해주면
BUILD SUCCESSFUL
cs 공부 열심히 하자
정리
로그 원인
- 로컬 네트워크 설정이나 환경 변수에 문제가 생겨서 포트를 바인딩(bind)하지 못한 상태
Gradle daemon이 TCP 서버를 만들 때
listen 단계에서 네트워크 주소 오류 발생
-- TCP 서버 동작 순서
1. socket() → 소켓 생성
2. bind() → IP + 포트 지정
3. listen() → 연결 대기 상태
4. accept() → 클라이언트 연결 수락
내 원인
- VMware Network Adapter (VMnet1, VMnet8)의 상태 문제
JVM이 잘못된 네트워크 인터페이스 선택
해결방법
- 문제를 발생시키는 네트워크 어댑터 비활성화
JVM이 선택할 네트워크 인터페이스 목록에서 제거
'IT > 개발' 카테고리의 다른 글
| [뉴스톡] 개발 일지 : 한국투자증권 API 연동 (0) | 2026.05.08 |
|---|---|
| [뉴스톡] 개발 일지 : 이메일 전송 기능 구현 (0) | 2026.05.07 |