web-dev-qa-db-fra.com

Nettoyer les métadonnées de l'espace de travail Eclipse

J'utilise plusieurs espaces de travail avec Eclipse. J'ai récemment remarqué que certains de mes espaces de travail étaient cruellement contaminés par des progiciels que j'avais installés, puis supprimés par la suite. Autant que je sache, la situation est telle que de nombreux packages écrivent des éléments (parfois beaucoup d’éléments) dans le dossier .metadata pour chaque espace de travail que j’ouvre au cours de l’installation du package. Lorsque j'ai supprimé un package, il semble nettoyer le dossier .metadata de l'espace de travail que j'ai ouvert à ce moment-là, mais tous les autres espaces de travail sont conservés avec des métadonnées orphelines. Parfois, ces métadonnées causent des problèmes, souvent des erreurs lors de l'ouverture de l'espace de travail et parfois une instabilité.

Le seul moyen que je connaisse pour y remédier est de créer un nouvel espace de travail, d'importer des projets depuis cet espace de travail pollué, de reconstruire tous mes paramètres (un problème majeur), puis de supprimer l'ancien espace de travail. Y a-t-il un moyen plus simple de gérer cela?

34
Ted Hopp

Il n’existe pas de moyen simple de supprimer les éléments "obsolètes" d’un espace de travail existant. L'utilisation du paramètre "clean" n'aidera pas vraiment, car la plupart des fichiers auxquels vous faites référence sont des "données de formulaire libre", connues uniquement des plugins qui ne sont plus disponibles.

Votre meilleur choix est d’optimiser la réimportation, pour laquelle je voudrais souligner les points suivants:

  • Lors de la création d'un nouvel espace de travail, vous pouvez déjà choisir de copier certains paramètres du courant vers le nouvel espace de travail.
  • Vous pouvez exporter les préférences de l'espace de travail actuel (à l'aide du menu Export ) et les réimporter dans le nouvel espace de travail.
  • Il existe de nombreuses recommandations sur Internet pour copier simplement le dossier ${old_workspace}/.metadata/.plugins/org.Eclipse.core.runtime/.settings de l'ancien dans le nouvel espace de travail. C’est sûrement le moyen le plus rapide, mais cela peut conduire à un comportement étrange, car certains de vos plugins peuvent dépendre de ces paramètres et de certaines des "données de formulaire libre" mentionnées stockées ailleurs. (Certaines personnes peuvent même créer des liens symboliques entre ces dossiers sur plusieurs espaces de travail, mais cela nécessite réellement d'utiliser les mêmes plug-ins sur tous les espaces de travail.)
  • Vous voudrez peut-être envisager d'utiliser plus de paramètres spécifiques au projet que de préférences d'espace de travail à l'avenir. Ainsi, par exemple, tous les paramètres du compilateur Java peuvent être définis au niveau de l’espace de travail ou au niveau du projet. Si ce paramètre est défini au niveau du projet, vous pouvez les placer sous contrôle de version et sont indépendants de l'espace de travail.
24
Bananeweizen

Une des choses que vous pouvez essayer est de démarrer Eclipse avec l’option -clean. Si vous avez choisi de faire en sorte qu'Eclipse utilise le même espace de travail à chaque fois, vous ne devez rien faire d'autre par la suite. Avec cette option en place, l'espace de travail doit être nettoyé. 

Toutefois, si vous n'avez pas choisi d'espace de travail par défaut, vous serez invité à choisir cet espace lors de l'ouverture d'Eclipse. À ce stade, choisissez l’espace de travail à nettoyer.

Voir "Comment exécuter Eclipse en mode minimal" et "Conserver Eclipse propre" pour plus de détails.

11
Ashutosh Jindal

Dans mon cas, Eclipse n'indique pas la fonction de classe parente sur $ this, alors j'exécute ci-dessous les points de mention et cela commence à fonctionner: -

Je vais dans mon dossier/var/www/et vérifie la présence du dossier .metadata (Ici, vérifiez le fichier .log et le reste.) La ressource est désynchronisée avec le système de fichiers: 1. Allez dans Eclipse -> Projet -> Nettoyer 2. Windows - Préférences -> Général -> Espace de travail -> Et configurez-le sur "Actualiser automatiquement"

Après ce boom, tout commence à marcher :)

Si vous souhaitez également charger des variables à partir d’autres fichiers, vous devez également: des dossiers"

Ensuite, il affichera les éléments, les variables et d’autres fonctions. 

3
kandysingh

Le seul moyen que je connaisse pour résoudre ce problème est de créer un nouvel espace de travail, importer des projets depuis l'espace de travail pollué, en reconstruisant tous mes fichiers paramètres (une douleur majeure) et ensuite supprimer l'ancien espace de travail. Y'a-t-il un moyen plus facile de gérer cela?

Pour synchroniser ou restaurer tous nos paramètres, nous utilisons Workspace Mechanic . Une fois que tous les paramètres sont enregistrés, il suffit d’un clic et tous les paramètres sont restaurés .... Vous pouvez également configurer un serveur fournissant ces paramètres à tous les utilisateurs. 

1
Lonzak

Dans certains cas, je pouvais éviter le blocage d'Eclipse au démarrage en supprimant un fichier .snap dans vos métadonnées de l'espace de travail (.metadata/.plugins/org.Eclipse.core.resources/.snap).

Voir aussi https://bugs.Eclipse.org/bugs/show_bug.cgi?id=149121 (Le bogue a été fermé, mais m'est arrivé récemment)

0