jar 파일로 함께 묶어버린 이미지는 jar 파일을 실행 했을 때, 이미지가 출력되지 않는 경우가 있다.
이때는 다음과 같이 클래스 로더를 사용하면 된다.
ClassLoader cl = this.getClass().getClassLoader();
JLabel = new JLabel(new ImageIcon(cl.getResource("images/1.jpg")));
이미지 1.jpg 는 images 폴더 아래에 있을 것이다.
이해를 돕고자 간단한 예제 이클립스 프로젝트 전체를 올려둔다.
프로젝트 폴더 안의 manifest.mf 파일을 열어보면
Manifest-Version: 1.0
Sealed: true
Main-Class: test.Test
위와 같이 되어 있는데, 간략하게 설명하자면, test 패키지의 Test 클래스에서 main 함수를 찾는다는 의미이고 Sealed: true 라고 되어 있는 것은 jar 파일 안에서 모든 클래스들을 찾는다는 의미이다.
'IT_Programming > Java' 카테고리의 다른 글
J2SDK1.4에 추가된 nio로 비동기식 고가용성 서버 만들기 (0) | 2009.05.01 |
---|---|
ByteBufferPool과 ThreadPool을 추가해 성능 업그레이드하기 (0) | 2009.05.01 |
[펌] Arrays in JNI (0) | 2009.04.13 |
[펌] Java Native Interface (JNI) - Strings in JNI (0) | 2009.04.13 |
[JDBC] Procedure Call 샘플 코드 (0) | 2009.04.13 |