오늘 프로젝트를 정리 하면서 이미지를 jar안에 넣는 작업을 했습니다.

netbeans에서 프로젝트를 하고 있었으므로 jar파일 만드는 것은 알아서 해주지만, 이미지를 넣기

위해서 .class파일들이 모여 있는 곳에 이미지를 옮기고 코드를 수정했습니다.

하지만!!!

동작을 하지 않는 것입니다..

jar파일에 있는 리소스를 가져 오기 위해서 ClassLoader의 getResource 

메소드를 사용해야 합니다.

기존에 직접 파일의 경로로 가서 파일을 직접 읽어 왔던 코드를 jar파일에 있는 것을 

classloader를 통해 읽어 

오는 코드로 변경했는데 동작을 하지 않아서 고생을 하고 원인을 찾아 해매 두시간을 헤매고 있었습니다.

결국 일일이 어디서 문제가 있는지 디버깅 코드를 넣어 가면서 테스트를 하는데 

원인을 밝혀 냈고, 화가 나더라구요...

기존의 코드에 이미지를 얻어 오기 위한 경로와 파일 이름에는 대소 문자를 구분 하지 않았는데 

jar파일 안에 있는 리소스를 얻기 위한 경로 지정해는 대소 문자를 구분 하고 띄어 쓰기는 되지 않는 것을 밝견

했습니다.

결국 문제를 해결했지만... 참.. 찜찜 하네요..

왜이렇게 서로 다르게 만들어서 힘들게 하는 것일 까요...

그리고 jar파일에 이미지를 넣지 않을때와 넣을때..

두 버전을 유지하는 것이 어렵네요.. (이건 제가 아직 잘 몰라서 그런것 같지만..ㅠ)

아무튼 올만에 삽질 좀 했습니다.ㅋ
신고
by danguria 2010.01.05 18:29
| 1 |

티스토리 툴바