Comment accéder à un fichier Image dans un Projet Eclipse Dossier
J'ai un seul fichier image dans un dossier de mon projet Eclipse qui stocke un fichier image (logo.jpg). Cependant, je ne sais pas comment accéder à mon programme principal.
J'avais essayé le suivant
private static URL logoPath
public class MainApplication
{
public void createGui()
{
logoPath.getClass().getResource("/Resources/images/logo.jpg");
////
}
/////
}
Problème est que je reçois une exception de pointeur null alors, évidemment, que le chemin est mal fait ou autre chose le logoPath.getClass() est de déclenchement.
Des idées?
Pas de preneurs? Je veux enregistrer une image à utiliser comme logo quand im distribuer le fichier JAR j'ai donc besoin de s'assurer de la gi référençant l'emplacement approprié à chaque fois plutôt que d'un emplacement de jeu sur mon pc
OriginalL'auteur StephenHynes | 2012-03-20
Vous devez vous connecter pour publier un commentaire.
Vous devez placer vos ressources dans un source java du répertoire pour qu'ils soient visibles. Vous avez deux options:
Déplacer vos "ressources" dossier sous votre "src" le dossier.
Créer un nouveau dossier source juste pour les ressources. Vous pouvez le faire en Java Build Path de la page de propriétés du projet.
Plusieurs choses à surveiller...
Attention à votre capitalisation. De ressources Java de recherche est sensible à la casse.
Le chemin d'accès que vous utilisez sera par rapport à la source de dossier (pas de racine du projet). Par exemple, si vous faites vos ressources dossier un dossier source, votre chemin devra être "images/...". Si vous voulez préserver les ressources dossier dans le chemin de recherche, vous aurez besoin de créer un dossier supplémentaire dans votre projet pour servir en tant que source de la racine pour les ressources.
Je ne suis pas certain si c'est un problème réel, mais les ressources chemins d'accès ne doit pas commencer par un slash. Ils ne sont pas vraiment des sentiers dans un sens traditionnel. Pensez à eux comme package-qualifié de la classe des noms, mais avec un '/' au lieu de '.' comme séparateur.
logoPath.getClass().getResource("resources/logo.jpg");
Pour être précis, un Dossier Source Java (comme spécifié dans le Java Build Path du panneau de propriétés du projet) contrôle dans la mesure où Eclipse Java recherche .fichier source de java et de leurs ressources. Tout le reste du projet est invisible. Si vous mettez "resources/logo.jpg" dans votre "src" le dossier, puis getResource("resources/logo.jpg") est en effet la bonne invocation.
Alors j'ai finalement obtenu ce travail. Il a fini par travailler avec cette
URL logoPath = new MainApplication().getClass().getClassLoader().getResource("logo.jpg");
si mon problème est maintenant que cela fonctionne très bien sur ma machine mais pas sur des machines différentesOriginalL'auteur Konstantin Komissarchik
U peut utiliser de cette façon
J'ai le paquet suivant la structure
src/test (le paquet de test contient les fichiers Java)
src/images (des images du dossier contenant des images)
Je vais obtenir une image à partir de
src/images/login.png à src/test/*.java
JLabel label = new JLabel(new ImageIcon(getClass().getResource("/images/login.png")));
OriginalL'auteur Surendra Jnawali
Je suis faire que, de la même façon
Et de la structure du fichier ressemble à ceci
/src/main/java/com/hauke/Main.java
/resource/logo.jpg
Mon problème était avant que j'ai nommé le répertoire "ressources" et doit être "ressource"
OriginalL'auteur Hauke