Désactiver la validation XML dans Eclipse

123

Mon Eclipse valide les fichiers XML à chaque fois que j'enregistre un fichier et cela prend un certain temps pour les valider. Le projet est créé à l'aide de gwt-maven-plugin.

Les fichiers XML ne se trouvent sous aucun chemin de construction du dossier source dans Eclipse, ils sont générés automatiquement par SmartGWT sous src / main / webapp / [GwtModule]> / sc

De plus, tous ces fichiers XML sont marqués de l'erreur "Le contenu n'est pas autorisé dans le prologue" et chaque fois que je lance le projet, je dois confirmer que je veux exécuter le projet avec des erreurs bien qu'il n'y en ait pas (et tout fonctionne bien).

J'ai essayé de suspendre tous les validateurs sous Eclipse -> Fenêtre -> Préférences -> Validation mais en vain.

Une idée de la façon dont je peux empêcher Eclipse de m'ennuyer à chaque fois?

Satish
la source
Préférences..xml..xml files..validation
Ed Staub
@EdStaub Changer l'un de ceux-ci ne fait aucune différence
Satish

Réponses:

168

Vous avez deux options:

  1. Configurer les paramètres de l'espace de travail (désactiver la validation pour l'espace de travail actuel): Allez dans Fenêtre> Préférences> Validation et décochez le manuel et construisez pour: XML Schema Validator, XML Validator

  2. Cochez activer les paramètres spécifiques au projet (désactivez la validation pour ce projet): cliquez avec le bouton droit sur le projet, sélectionnez Propriétés> Validation et décochez le manuel et compilez pour: XML Schema Validator, XML Validator

Faites un clic droit sur le projet et sélectionnez Valider pour faire disparaître les erreurs.

Mahmoud Saleh
la source
3
La structure du menu semble avoir changé dans les nouvelles versions d'Eclipse - au moins mon installation Eclipse Mars n'a pas d'entrée "XML Schema Validator". Au lieu de cela, le menu contextuel du projet répertorie chaque validation sous «validation», comme décrit dans la réponse de kevinarpe.
Stephan Rauh
2
oui pour les versions Eclipse plus récentes: cliquez sur Fenêtre> Préférences et sélectionnez Validation dans le volet gauche. La page Validation de la fenêtre Préférences répertorie les validateurs disponibles dans votre projet et leurs paramètres. Pour désactiver des validateurs individuels, décochez les cases en regard de chaque validateur que vous souhaitez désactiver. Chaque validateur a une case à cocher pour spécifier s'il est activé pour la validation manuelle ou sur une construction.
Tom
63

Les autres réponses peuvent fonctionner pour vous, mais elles ne couvrent pas mon cas. Je voulais que certains XML soient validés et d'autres non. Cette image montre comment exclure certains dossiers (ou fichiers) pour la validation XML.

Commencez par un clic droit sur la racine de votre projet Eclipse. Sélectionnez le dernier élément: Propriétés ...

entrez la description de l'image ici

(Si votre navigateur redimensionne cette image très petite, cliquez avec le bouton droit de la souris et ouvrez-la dans une nouvelle fenêtre ou un nouvel onglet.)

  • Eclipse semble être très sensible si vous cliquez sur le bouton ** Parcourir le fichier ... * ou ** Dossier du navigateur ... *. Cette boîte de dialogue a besoin de travail!
  • Cela a été fait en utilisant Eclipse 4.3 (Kepler).
kevinarpe
la source
46

Fenêtre> Préférences> Validation> décochez XML Validator Manual and Build entrez la description de l'image ici

marque
la source
8

Assurez-vous que votre codage est correct pour tous vos fichiers, cela peut parfois arriver si vous avez un mauvais codage pour votre fichier ou un mauvais codage dans votre en-tête XML.

Donc, si j'ai le NewFile.xml suivant:

<?xml version="1.0" encoding="UTF-16"?>
<bar foo="foiré" />

Et l'encodage de l'éclipse est UTF-8:

Ressource de codage Eclipse

Le codage de votre fichier, le codage défini dans Eclipse (via Propriétés-> Ressource) et le codage déclaré dans le document XML doivent tous être d'accord.

Le validateur tente de lire le fichier, s'attendant à <? Xml ... mais comme le codage est différent de celui attendu, il ne le trouve pas. D'où l'erreur: le contenu n'est pas autorisé dans le prologue. Le prologue est le bit avant la déclaration <? Xml.

EDIT: Désolé, je n'ai pas réalisé que les fichiers .xml ont été générés et contiennent en fait du javascript.

Lorsque vous suspendez les validateurs, les messages d'erreur que vous avez générés ne disparaissent pas. Pour les faire disparaître, vous devez les supprimer manuellement.

  1. Suspendre les validateurs
  2. Cliquez sur le message «Le contenu n'est pas autorisé dans le prologue», faites un clic droit et supprimez. Vous pouvez en sélectionner plusieurs ou tous.
  3. Faites un projet-> Nettoyer. Les messages ne doivent pas revenir.

Je pense que parce que vous avez suspendu les validateurs, Eclipse ne se rend pas compte qu'il doit supprimer les anciens messages d'erreur qui provenaient des validateurs.

Matthew Farwell
la source
Les fichiers générés par SmartGWT semblent contenir du JavaScript et non du XML, bien qu'ils aient étrangement l'extension .ds.xml
Satish
Les erreurs ont disparu lorsque j'ai supprimé le répertoire généré, mais lorsque j'ai nettoyé le projet, les erreurs sont revenues avec le répertoire. Les validateurs sont suspendus pendant tout ce temps.
Satish
1

Dans JBoss Developer 4.0 et supérieur (basé sur Eclipse), c'est un peu plus facile. Faites un clic droit sur votre fichier ou dossier contenant des fichiers xml, choisissez «Exclure la validation», puis cliquez sur «Oui» pour confirmer. Ensuite, faites un clic droit sur le même fichier / dossier à nouveau et cliquez sur «Valider», ce qui supprimera les erreurs avec une confirmation.

Analyse floue
la source