Disabilita la convalida XML in Eclipse


123

Il mio Eclipse convalida i file XML ogni volta che salvo un file e ci vuole un po 'per convalidarli. Il progetto viene creato utilizzando gwt-maven-plugin.

I file XML non si trovano in alcun percorso di creazione della cartella di origine in Eclipse, sono generati automaticamente da SmartGWT in src / main / webapp / [GwtModule]> / sc

Inoltre tutti questi file XML sono contrassegnati con l'errore "Il contenuto non è consentito nel prologo" e ogni volta che eseguo il progetto devo confermare che voglio eseguire il progetto con errori anche se non ce ne sono (e tutto funziona bene).

Ho provato a sospendere tutti i validatori in Eclipse -> Finestra -> Preferenze -> Convalida ma senza successo.

Qualche idea su come posso impedire a Eclipse di infastidirmi ogni volta?


Preferenze..xml..xml files..validation
Ed Staub

@EdStaub Cambiare uno qualsiasi di questi non fa differenza
Satish

Risposte:


168

Hai due opzioni:

  1. Configurare le impostazioni dell'area di lavoro (disabilitare la convalida per l'area di lavoro corrente): vai su Finestra> Preferenze> Convalida e deseleziona il manuale e crea per: XML Schema Validator, XML Validator

  2. Seleziona Abilita impostazioni specifiche del progetto (disabilita la convalida per questo progetto): fai clic con il pulsante destro del mouse sul progetto, seleziona Proprietà> Convalida e deseleziona il manuale e crea per: XML Schema Validator, XML Validator

Fare clic con il pulsante destro del mouse sul progetto e selezionare Convalida per far scomparire gli errori.


3
La struttura del menu sembra essere cambiata nelle versioni più recenti di Eclipse - almeno la mia installazione di Eclipse Mars non ha una voce "XML Schema Validator". Invece, il menu contestuale del progetto elenca ogni validazione sotto "validazione", come descritto nella risposta di kevinarpe.
Stephan Rauh,

2
sì per le versioni Eclipse più recenti: fare clic su Finestra> Preferenze e selezionare Convalida nel riquadro di sinistra. La pagina Convalida della finestra Preferenze elenca i validatori disponibili nel tuo progetto e le loro impostazioni. Per disabilitare i singoli validatori, deseleziona le caselle di controllo accanto a ogni validatore che desideri disabilitare. Ogni validatore ha una casella di controllo per specificare se è abilitato per la convalida manuale o su una build.
Tom

63

Le altre risposte potrebbero funzionare per te, ma non hanno coperto il mio caso. Volevo che alcuni XML venissero convalidati e altri no. Questa immagine mostra come escludere determinate cartelle (o file) per la convalida XML.

Inizia facendo clic con il pulsante destro del mouse sulla radice del tuo progetto Eclipse. Seleziona l'ultimo elemento: Proprietà ...

inserisci qui la descrizione dell'immagine

(Se il tuo browser ridimensiona questa immagine molto piccola, fai clic con il pulsante destro del mouse e aprila in una nuova finestra o scheda.)

  • Eclipse sembra essere molto sensibile se si fa clic sul pulsante ** Sfoglia file ... * o ** Cartella browser ... *. Questa finestra di dialogo richiede un po 'di lavoro!
  • Ciò è stato fatto utilizzando Eclipse 4.3 (Kepler).

46

Finestra> Preferenze> Convalida> deseleziona XML Validator Manual and Build inserisci qui la descrizione dell'immagine


8

Assicurati che la tua codifica sia corretta per tutti i tuoi file, questo a volte può accadere se hai la codifica sbagliata per il tuo file o la codifica sbagliata nell'intestazione XML.

Quindi, se ho il seguente NewFile.xml:

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

E la codifica eclipse è UTF-8:

Risorsa di codifica Eclipse

La codifica del file, la codifica definita in Eclipse (tramite Proprietà-> Risorsa) e la codifica dichiarata nel documento XML devono essere tutte d'accordo.

Il validatore sta tentando di leggere il file, aspettandosi <? Xml ... ma poiché la codifica è diversa da quella prevista, non la trova. Da qui l'errore: il contenuto non è consentito nel prologo. Il prologo è il bit prima della dichiarazione <? Xml.

EDIT: Siamo spiacenti, non sapevo che i file .xml sono stati generati e in realtà contengono javascript.

Quando sospendi i validatori, i messaggi di errore che hai generato non scompaiono. Per farli sparire, devi eliminarli manualmente.

  1. Sospendi i validatori
  2. Fare clic sul messaggio "Il contenuto non è consentito nel prologo", fare clic con il tasto destro ed eliminare. Puoi selezionarne più di uno o tutti.
  3. Fai un progetto-> Pulisci. I messaggi non dovrebbero tornare indietro.

Penso che poiché hai sospeso i validatori, Eclipse non si rende conto di dover cancellare i vecchi messaggi di errore che provenivano dai validatori.


I file generati da SmartGWT sembrano contenere JavaScript e non XML, anche se stranamente hanno l'estensione .ds.xml
Satish

Gli errori sono scomparsi quando ho cancellato la directory generata, ma quando ho pulito il progetto gli errori sono tornati insieme alla directory. I validatori sono sempre sospesi.
Satish

1

In JBoss Developer 4.0 e versioni successive (basato su Eclipse), questo è un po 'più semplice. Basta fare clic con il pulsante destro del mouse sul file o sulla cartella che contiene file basati su xml, scegliere "Escludi convalida", quindi fare clic su "Sì" per confermare. Quindi fare nuovamente clic con il pulsante destro del mouse sugli stessi file / cartella e fare clic su "Convalida", che rimuoverà gli errori con una conferma.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.