Inclure l'image dans le fichier jar avec la méthode statique java

Un mémo lorsque vous avez des problèmes car l'image n'est pas incluse lorsque vous créez un fichier jar à l'aide d'Eclipse.

problème

L'image ne s'affiche pas même si je crée un fichier jar. La méthode de lecture de l'image est statique. À ce rythme, le fichier jar ne contiendra aucune image.

Main.java


public static ImageIcon getImageIcon() {
    ImageIcon icon = new ImageIcon("nanase.jpg ");
    return icon;
}

Solution

Prenez une classe comme argument

Main.java


public static ImageIcon getImageIcon(Main m) {
    ClassLoader cl = m.getClass().getClassLoader();
    ImageIcon icon = new ImageIcon(cl.getResource("nanase.jpg "));
    return icon;
}

Solution quand elle n'est pas statique

Référence → https://virtualwalk.hatenadiary.org/entry/20121013/1350127275

Main.java


public ImageIcon getImageIcon() {
    ClassLoader cl = this.getClass().getClassLoader();
    ImageIcon icon = new ImageIcon(cl.getResource("nanase.jpg "));
    return icon;
}

référence

・ Htps: // er tsua lk. Hatena Jia ry. Rg / Entrée / 20120113/1350127275 ・ Htps: // ww. Eh bien. jp / Tsutoria l / Imageikon / Inde x2. html -Création d'un pot avec eclipse https://java.keicode.com/lang/how-to-compile-jar-with-eclipse.php

L'ensemble

Main.java


package include;
import java.awt.BorderLayout;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class Main extends JFrame{

	  public static void main(String[] args){
	    Main frame = new Main();
	    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	    frame.setBounds(10, 10, 150, 150);
	    frame.setTitle("Titre");
	    frame.setVisible(true);
	  }

	  Main(){
//	    ImageIcon icon = this.getImageIcon();
	    ImageIcon icon = Im.getImageIcon(this);
	    JLabel label = new JLabel(icon);

	    JPanel p = new JPanel();
	    p.add(label);

	    getContentPane().add(p, BorderLayout.CENTER);
	  }

//	  private ImageIcon getImageIcon() {
//		  ClassLoader cl = this.getClass().getClassLoader();
//		  ImageIcon icon = new ImageIcon(cl.getResource("nanase.jpg "));
//		  return icon;
//	  }
	}


class Im{
	public static ImageIcon getImageIcon(Main m) {
	  ClassLoader cl = m.getClass().getClassLoader();
	  ImageIcon icon = new ImageIcon(cl.getResource("nanase.jpg "));
	  return icon;
	 }
}

Recommended Posts

Inclure l'image dans le fichier jar avec la méthode statique java
Inclure les ressources d'image dans le fichier jar
Méthode de concurrence en Java avec exemple de base
Lire le fichier xlsx en Java avec Selenium
Lire une chaîne dans un fichier PDF avec Java
Analyse de code statique par Checkstyle avec Java + Gradle
Inclure le pot externe dans le package avec Spring boot2 + Maven3
[Java] Récupère le fichier dans le fichier jar quel que soit l'environnement
[Java] JavaConfig avec classe interne statique
Avantages de la méthode statique Java
Analyse morphologique en Java avec Kuromoji
Lire le fichier de propriétés Java en C #
Méthode de redimensionnement automatique des photos par Java
Comment créer un fichier jar sans dépendances dans Maven
Décompressez le fichier zip en Java
Essayez d'utiliser Redis avec Java (jar)
Enregistrer la sortie dans un fichier en Java
Exemple de mise à jour de fichier EXCEL avec JAVA
A propos du traitement de la copie de fichiers en Java
Tweak Markdown avec Java flexmark-java
Appelez la super méthode en Java
[Java] Créez un fichier jar compressé et non compressé avec la commande jar
Générer le code source à partir du fichier JAR avec JD-GUI du projet Java Decompiler
Comment lire le fichier de paramètres log4j dans un projet Java assemblé dans un fichier jar Memo
[Java] Résumez comment comparer avec la méthode equals
Priorité d'accès aux fichiers statiques dans Spring Boot
Comment ajouter un fichier jar dans ScalaIDE
Quelle est la méthode principale en Java?
Diviser une chaîne avec ". (Dot)" en Java
Gérez d'énormes JSON avec Java Lambda
Exemple pour décompresser le fichier gz en Java
Méthode d'opération d'élément dans Appium TIPS (Java)
Méthode Java
java (méthode)
Java statique
inclure la méthode
Méthode Java
[Java] méthode
[Java] méthode
java qui génère un fichier au format vmg au format eml
[Java] Gestion des Java Beans dans la chaîne de méthodes
Outil GUI refactorisé réalisé avec Java8 + JavaFX en 2016
Appel de méthode Java depuis RPG (appel de méthode dans sa propre classe)
Extraction de texte en Java à partir de PDF avec pdfbox-2.0.8
Modifier dynamiquement les champs finaux statiques privés en Java
Nom de la méthode de la méthode de fabrique statique apprise à partir de Java 8
Un fichier bat qui utilise Java dans Windows
Vérifier le comportement statique et public dans les méthodes Java
[Java] Lire les fichiers dans src / main / resources
Refactoriser la gestion des accès aux propriétés avec Java Method Util
Entraînez-vous à travailler avec des paires de substitution Unicode en Java
[JAVA] [Spring] [MyBatis] Utiliser IN () avec SQL Builder
Nom de méthode de la chaîne de méthodes dans Java Builder + α
Vérifier les arguments d'appel de méthode dans les blocs avec RSpec
Crypter / décrypter avec AES256 en PHP et Java
[Java] Obtenir KFunction à partir de la méthode / du constructeur en Java [Kotlin]
Programmation utilisant le type de somme directe en Java (news)
[Java] Convertir et importer des valeurs de fichier avec OpenCSV