>  기사  >  Java  >  getClass().getResource()가 내 이미지를 로드하지 못하는 이유는 무엇입니까?

getClass().getResource()가 내 이미지를 로드하지 못하는 이유는 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-09 22:33:02346검색

Why Does getClass().getResource() Fail to Load My Image?

getClass().getResource()를 사용하여 리소스 로드

애플리케이션 아이콘의 이미지를 로드하려고 할 때 다음을 사용하는 데 어려움이 발생했습니다. getClass().getResource(). 이 메소드는 파일 시스템 경로가 아닌 클래스 경로에서 리소스를 로드합니다.

첫 번째 예에서는 getClass().getResource를 사용하여 URL을 통해 이미지에 액세스했습니다. 이 메소드는 지정된 자원에 대한 클래스 경로를 검색합니다. 제공된 클래스 경로 위치에서 이미지를 찾을 수 없으면 imgURL이 null을 반환했습니다.

반대로 파일 경로를 문자열로 전달하여 ImageIcon을 직접 생성하면 파일 시스템에서 읽기 때문에 이미지가 성공적으로 로드됩니다. 이 경우 경로는 이미지 파일을 직접 참조합니다.

이 문제를 해결하려면 클래스 경로를 통해 이미지 파일에 액세스할 수 있는지 확인하세요. 여기에는 일반적으로 프로젝트 디렉터리 내의 하위 디렉터리에 이미지를 배치하는 작업이 포함됩니다. 예를 들어, "images"라는 하위 디렉터리를 만들고 그 안에 이미지 파일을 넣으면 다음 리소스 경로를 사용하여 이미지에 액세스할 수 있습니다.

java.net.URL imgURL = getClass().getResource("/images/my_image.png");

리소스 경로는 이미지가 프로젝트의 최상위 디렉터리인 클래스 경로의 루트에 있음을 나타냅니다.

위 내용은 getClass().getResource()가 내 이미지를 로드하지 못하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.