Eclipse를 사용하여 Java 응용 프로그램을 개발 중입니다. Maven은 최종 jar 파일을 만드는 데 사용됩니다.
응용 프로그램에서 버튼에 대한 일부 이미지 아이콘을 사용합니다. 인터넷에서 몇 가지 지침을 따라 프로젝트를 클릭하여 "소스"디렉토리를 만들었습니다. 소스 디렉토리의 이름을 "res"로 지정하고 이미지를이 디렉토리로 옮겼습니다.
public static ImageIcon getIcon() {
if (isThisJarfile()) {
URL url = this.class.getResources("/res/myicon.png");
return new ImageIcon(url);
}else {
return new ImageIcon("/res/myicon.png");
}
}
응용 프로그램이 jar 파일로 패키지되지 않은 경우 (디버깅에 유용함)이 방법이 유용합니다. 그러나 maven 패키지를 만들 때 이미지가 jar 파일의 루트 디렉토리에 저장되는 것을 볼 수 있습니다. 다음 전화가 작동합니다.
URL url = this.class.getResource("/myicon.png");
제가 간과 한 몇 가지 단계가 있는지 궁금합니다.
이미지에 대해 pom.xml에 특별한 작업을 수행 할 필요가 없었 음을 유의하십시오. 메이븐 (Maven)은 자동으로 선택합니다 (잘못된 위치에 넣는 것을 제외하고).
도움을 주셔서 감사합니다. 당신은 표준 메이븐 프로젝트의 디렉토리 구조를 다음과 같은 경우
감사합니다, 피터
이것은 병 내부와 외부에서 완벽하게 작동했습니다. 당신의 도움을 주셔서 대단히 감사합니다. 문안 인사. Peter – Peter
하지만 왜 webapp 대신 리소스 아래에 두어야합니까? 리소스 아래에두면 이미지가 정적 파일이기 때문에 WEB-INF 아래의 클래스 파일에 이미지가 배치됩니다. – robben