Une question à propos de l'Éclipse et le chemin de classe dans une configuration d'Exécution
J'ai commencé à utiliser Log4J pour la première fois. J'ai créé un log4j.les propriétés de fichier et le mettre dans mon projet du dossier dans Eclipse. J'ai également créé une configuration d'Exécution de mon application (c'est juste un défaut de configuration d'Exécution, sans options supplémentaires).
Maintenant, j'essaye d'exécuter l'application et j'obtiens un message d'erreur à propos de log4j n'étant pas en mesure de s'initialiser (lire le fichier de propriétés). Je sais que les propriétés de fichier doit être dans le classpath, alors, évidemment, la configuration d'Exécution est de ne pas définir le classpath correctement.
Si je vais dans le Classpath de l'onglet de mon Exécution de la configuration, j'ai le texte suivant:
- Bootstrap Entrées
- Entrées Utilisateur
- MyApplication (classpath par défaut)
- log4j-1.2.15.jar - C:\Workspace\MyApplication\lib
Cependant, si j'ajoute mon projet du dossier manuellement (j'cliquez sur Ajouter des Dossiers, Avancé, MyApplication), log4j sera en mesure de s'initialiser.
Pourquoi donc? Pourquoi log4j ne peut pas trouver le fichier de propriétés, à moins que j'ai ajouter le projet du dossier manuellement? N'est-ce pas ce dossier dans le chemin de classe par défaut? (Au-dessus de la sortie suggèrent qu'il est.)
OriginalL'auteur Dario | 2009-06-16
Vous devez vous connecter pour publier un commentaire.
Non, le dossier du projet lui-même n'est pas dans le classpath, par défaut, la sortie du projet de dossiers sont (généralement un sous-dossier nommé bin ou classes).
Si vous mettez votre log4j.propriétés dans votre dossier source du projet à la place de son dossier racine, puis tout devrait fonctionner (non-source fichiers dans le dossier source sont copiés dans le dossier de sortie automatiquement).
En général, youshould de ne pas avoir à jouer avec le chemin de la classe de types de configurations d'exécution - dans la plupart des cas, il est plus approprié de les changer (ou, comme dans votre cas, utiliser correctement) le chemin de génération dans les propriétés du projet.
OriginalL'auteur Michael Borgwardt
le dossier du projet n'est pas ajouté au classpath par défaut. Le classpath contient uniquement les classes de dossier par défaut.
Vous devrez ajouter manuellement n'importe quel autre dossier dans le chemin.
OriginalL'auteur Rahul
Vous avez deux options:
La raison pour laquelle il ne travaille pas maintenant, c'est que le fichier n'est pas dans le classpath du projet. Vous pouvez voir le classpath du Projet > Propriétés > Java Build Path
OriginalL'auteur David Rabinowitz