Eclipse에서 내보낸 실행 가능한 JAR이 이미지를 표시하지 않음
Eclipse에서 내보낸 JAR 파일에서 이미지를 로드하려고 하면 사용자에게 다음과 같은 문제가 발생할 수 있습니다. 이미지가 표시되지 않습니다.
이 문제를 해결하려면 다음:
1. 이미지 리소스 위치:
2. 이미지 로딩 방법:
사용된 이미지 로딩 방법을 확인하세요. 다음 방법이 성공적으로 테스트되었습니다.
label.setIcon(new ImageIcon(MainFrame.class.getResource("/resources/header.jpg")));
URL url = getClass().getResource("/resources/header.jpg"); Image image = Toolkit.getDefaultToolkit().getImage(url); label.setIcon(new ImageIcon(image));
try { label.setIcon(new ImageIcon(ImageIO.read(getClass().getResource("/resources/header.jpg")))); } catch (IOException e1) { e1.printStackTrace(); }
3. 빌드 경로 구성:
리소스가 소스 폴더에 직접 있지 않은 경우 빌드 경로에 포함되어 있는지 확인하세요.
4. 실행 구성:
실행 가능한 JAR로 내보낼 때 적절한 실행 구성을 선택하세요. 이 구성은 Eclipse에서 실행 중인 기본 클래스와 일치해야 합니다.
5. 매니페스트 파일:
매니페스트 파일에 다음 속성이 포함되어 있는지 확인하세요.
Rsrc-Class-Path: ./ Class-Path: . Rsrc-Main-Class: <main class> Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
예:
다음 예에서는 방법을 보여줍니다. 리소스에서 "stackoverflow.png"라는 이미지를 성공적으로 로드하려면 폴더:
파일 구조:
- src - com.stackoverflow.test - Main.java - resources - stackoverflow.png
코드:
package com.stackoverflow.test; import javax.swing.*; public class Main { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable(){ public void run() { URL url = Main.class.getResource("/resources/stackoverflow.png"); ImageIcon icon = new ImageIcon(url); JFrame frame = new JFrame(); frame.add(new JLabel(icon)); frame.pack(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null); frame.setVisible(true); } }); } }
내보내기:
프로젝트를 마우스 오른쪽 버튼으로 클릭하고 "내보내기"를 선택하세요. > "실행 가능한 JAR 파일". 적절한 시작 구성을 설정하고 JAR을 내보냅니다.
결과:
내보낸 JAR을 실행하면 "stackoverflow.png" 이미지가 성공적으로 표시됩니다.
위 내용은 내 Eclipse에서 내보낸 실행 가능 JAR에 이미지가 표시되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!