IntelliJ에서 xml의 경로를 찾지 못하는 문제
Reader reader = Resources.getResourceAsReader("org/example/chapter01/mybatis/sql-map-config.xml");
디버깅 을 하다가 위 코드 부분에서 경로를 못 찾는 문제가 있다는 것을 알게 되었습니다.
1. 시도
오타 확인
JDBC에서 오타에 의해 실행이 안되었던 적이 있어 오타를 확인하여 몇 가지의 오타를 고쳤지만,
여전히 동일한 오류가 발생하였습니다.
2. 원인
src
└── main
├── java
│ └── org
│ └── example
│ └── chapter01
│ └── mybatis
│ ├── EmployeeDAO.java
│ ├── EmployeeServiceClient.java
│ ├── EmployeeVO.java
│ ├── sql-map-config.xml
│ ├── s_emp-mapping.xml
└── resources
org.example.chapter01.mybatis
의 경로에. xml파일도 같이 두었습니다.
이로 인한 경로설정이 제대로 되지 않은 것이 원인이었습니다.
3. 해결
src
└── main
├── java
│ └── org
│ └── example
│ └── chapter01
│ └── mybatis
│ ├── EmployeeDAO.java
│ ├── EmployeeServiceClient.java
│ ├── EmployeeVO.java
└── resources
└── org
└── example
└── chapter01
└── mybatis
├── sql-map-config.xml
└── s_emp-mapping.xml
"IntelliJ IDEA"가 애플리케이션을 빌드할 때,
모든 리소스를 소스 경로에 상대적인 디렉터리 구조를 유지하면서
출력 디렉터리로 복사합니다.
"IntelliJ IDEA"에서는 아래의 형식은 기본적으로 리소스로 인식합니다.
- .dtd
- .jpeg
- .properites
- .gif
- .jpg
- .tld
- .html
- .png
- .xml
참고 : 인텔리제이 공식문서
.xml
파일을 클래스와 같은 경로에 두었기 때문에,
컴파일 시에. java 변환되는 동안. xml파일은 인식을 하지 못해 경로를 찾을 수 없었습니다.
즉, "IntelliJ"가 애플리케이션을 빌드하는 과정에서. xml파일을 리소스로 인식하지 못하였습니다.
해당 파일을 resources에 위치시킴으로써 해결할 수 있었습니다.
IDE는 다 비슷한 줄 알고 단순히 도서를 보며 따라 해보고 있었는데,
이번 시간을 통해 Eclipse와 IntelliJ의 빌드 방식에 차이가 있다는 것을 알게 되었습니다
'프로젝트 회고' 카테고리의 다른 글
클론 프로젝트) 카카오톡 클론코딩 - websocket통신시 유저 정보 null에 대한 고민 (0) | 2023.07.06 |
---|---|
클론 프로젝트) 카카오톡 클론코딩 - 채팅방 구현은 어떻게 할까 (0) | 2023.07.05 |
클론 프로젝트) 카카오톡 클론 코딩 (0) | 2023.07.05 |
실전 프로젝트) Apoorpoor - 아이템 이미지 나타내기 (0) | 2023.07.04 |
실전 프로젝트) Apoorpoor - 작성했던 테스트 코드의 방향성 (0) | 2023.07.02 |