2010-08-21 5 views
1

J'ai installé un nouveau disque dur avec JDK 1.6.0_20 et Netbeans 6.9.1. J'ai copié un projet Netbeans existant à partir de l'ancien disque et l'ai importé dans NB 6.9.1.Netbeans créant soudainement des fichiers et écrivant la sortie du journal dans le répertoire c: windows

Maintenant, il crée soudainement des fichiers de sortie et écrit des fichiers Log4J .log dans le répertoire c: \ windows au lieu du répertoire du projet. J'ai créé la classe de test ci-dessous en dehors de NB pour voir ce qui se passe. Exécuter ceci en dehors de NB donne les résultats attendus. L'importation de cette classe dans un nouveau projet NB donne également les résultats attendus. Mais si je copie cette classe dans l'autre projet alors il donne c: \ windows pour les 3 sorties.

Quel pourrait être le problème avec ce projet qui le fait agir comme si son répertoire de projet est c: \ windows?

public class DirectoryTest { 

    public static void main(String[] args) { 

     String userDir = System.getProperty("user.dir"); 
     System.out.println(userDir); 
     File file = new File("."); 

     try { 
      System.out.println(file.getCanonicalPath()); 
      System.out.println(file.getAbsolutePath()); 
     } catch (Exception ex) { 
      ex.printStackTrace(); 
     } 

    } 
} 
+0

Ajouter 4 espaces avant votre code afin qu'il puisse être formaté correctement – TheLQ

+0

Code reformaté; s'il vous plaît revenir si incorrect. – trashgod

+0

Je viens de mettre à jour NetBeans 6.9.1 et je ne suis pas sûr de ce que signifie "importé" dans ce contexte. – trashgod

Répondre

1

Vous pouvez essayer de supprimer les dossiers nbproject & build et de les recréer en tant que «Projet avec sources existantes». En dernier recours, supprimez le dossier cache NetBeans de l'emplacement où il est stocké sur votre plate-forme, généralement dans un dossier caché de votre répertoire personnel.

+0

C'était la solution. J'ai supprimé tous les répertoires nb * et les différents fichiers build * .xml et nbbuild * .xml et les ai recréés comme vous l'avez dit. Ce projet a vu plusieurs versions de NB, donc il peut avoir été confus. –

0

Vérifiez le paramètre "Répertoire de travail" dans la section "Exécuter" des propriétés du projet. Il suffit de définir le répertoire de votre projet là-bas.

+0

Cela n'a eu aucun effet. Log4j écrit toujours dans c: \ windows et le programme de test ci-dessus montre encore c: \ windows pour les trois sorties. –

+0

Avez-vous plusieurs définitions "Exécuter"? La sortie pour log4j pourrait être définie via un fichier log4j.xml (ou .properties) situé quelque part sur votre chemin de classe. Si vous êtes 100% la configuration d'exécution que vous utilisez a le bon répertoire défini, alors je ne sais pas ce qui pourrait être faux là –