Rumah > Java > javaTutorial > teks badan

Mengapa Imej Tidak Dipaparkan dalam My Eclipse Exported Runnable JAR?

Mary-Kate Olsen
Lepaskan: 2024-11-24 08:26:11
asal
740 orang telah melayarinya

Why are Images Not Displaying in My Eclipse Exported Runnable JAR?

Eclipse Exported Runnable JAR Tidak Memaparkan Imej

Apabila cuba memuatkan imej daripada fail JAR yang dieksport daripada Eclipse, pengguna mungkin menghadapi masalah di mana imej gagal dipaparkan.

Untuk menyelesaikan isu ini, pastikan berikut:

1. Lokasi Sumber Imej:

  • Sahkan bahawa imej dibungkus dengan betul dalam pakej kelas sumber.
  • Sebagai alternatif, cuba buat "folder sumber imej" dan letakkan imej di sana.
  • 2. Kaedah Pemuatan Imej:

    Sahkan kaedah pemuatan imej yang digunakan. Kaedah berikut telah berjaya diuji:

    label.setIcon(new ImageIcon(MainFrame.class.getResource("/resources/header.jpg")));
    Salin selepas log masuk
    URL url = getClass().getResource("/resources/header.jpg");
    Image image = Toolkit.getDefaultToolkit().getImage(url);
    label.setIcon(new ImageIcon(image));
    Salin selepas log masuk
    try
    {
        label.setIcon(new  ImageIcon(ImageIO.read(getClass().getResource("/resources/header.jpg"))));
    }
    catch (IOException e1)
    {
        e1.printStackTrace();
    }
    Salin selepas log masuk

    3. Konfigurasi Laluan Bina:

    Jika sumber tidak berada terus dalam folder sumber, pastikan ia disertakan dalam laluan binaan:

  • Klik kanan projek dan pilih "Bina Laluan" > "Konfigurasikan Laluan Binaan".
  • Dalam tab "Sumber", klik "Tambah Folder" dan navigasi ke folder sumber.
  • Ini akan menambah kandungan folder sumber pada laluan binaan.
  • 4. Konfigurasi Jalankan:

    Apabila mengeksport sebagai JAR boleh jalan, pilih konfigurasi larian yang sesuai. Konfigurasi ini harus sepadan dengan kelas utama yang anda jalankan dalam Eclipse.

    5. Fail Manifes:

    Pastikan fail manifes mengandungi sifat berikut:

    Rsrc-Class-Path: ./
    Class-Path: .
    Rsrc-Main-Class: <main class>
    Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
    Salin selepas log masuk

    Contoh:

    Contoh berikut menunjukkan cara untuk berjaya memuatkan imej bernama "stackoverflow.png" daripada sumber folder:

    Struktur Fail:

    - src
      - com.stackoverflow.test
        - Main.java
        - resources
          - stackoverflow.png
    Salin selepas log masuk

    Kod:

    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);
                }
            });
        }
    }
    Salin selepas log masuk

    Eksport:

    Klik kanan projek dan pilih "Eksport" > "Fail JAR Boleh Dijalankan". Sediakan konfigurasi pelancaran yang sesuai dan eksport JAR.

    Keputusan:

    Menjalankan JAR yang dieksport seharusnya memaparkan imej "stackoverflow.png" dengan jayanya.

    Atas ialah kandungan terperinci Mengapa Imej Tidak Dipaparkan dalam My Eclipse Exported Runnable JAR?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

    sumber:php.cn
    Kenyataan Laman Web ini
    Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
    Artikel terbaru oleh pengarang
    Tutorial Popular
    Lagi>
    Muat turun terkini
    Lagi>
    kesan web
    Kod sumber laman web
    Bahan laman web
    Templat hujung hadapan