Отключить проверку XML в Eclipse


123

Мой Eclipse проверяет файлы XML каждый раз, когда я сохраняю файл, и для их проверки требуется время. Проект создается с помощью gwt-maven-plugin.

XML-файлы не находятся в пути сборки исходной папки в Eclipse, они автоматически создаются SmartGWT в src / main / webapp / [GwtModule]> / sc

Также все эти XML-файлы отмечены ошибкой «Контент не разрешен в прологе», и каждый раз, когда я запускаю проект, я должен подтверждать, что я хочу запустить проект с ошибками, хотя их нет (и все работает нормально).

Я попытался приостановить все валидаторы в Eclipse -> Window -> Preferences -> Validation, но безрезультатно.

Есть идеи, как я могу заставить Eclipse не раздражать меня каждый раз?


Preferences..xml..xml files..validation
Ed Staub

@EdStaub Изменение любого из них не имеет значения
Сатиш

Ответы:


168

У вас есть два варианта:

  1. Настройте параметры рабочего пространства (отключите проверку для текущего рабочего пространства): перейдите в меню «Окно»> «Настройки»> «Проверка», снимите флажок с руководства и выполните сборку для: XML Schema Validator, XML Validator.

  2. Установите флажок включить специальные настройки проекта (отключите проверку для этого проекта): щелкните проект правой кнопкой мыши, выберите «Свойства»> «Проверка», снимите флажок с руководства и выполните сборку для: XML Schema Validator, XML Validator

Щелкните проект правой кнопкой мыши и выберите Проверить, чтобы ошибки исчезли.


3
Структура меню, похоже, изменилась в более новых версиях Eclipse - по крайней мере, в моей установке Eclipse Mars нет записи «XML Schema Validator». Вместо этого в контекстном меню проекта перечислены все проверки в разделе «проверка», как описано в ответе kevinarpe.
Стефан Раух

2
да для более поздних версий Eclipse: щелкните «Окно»> «Настройки» и выберите «Проверка» на левой панели. На странице Validation окна Preferences перечислены валидаторы, доступные в вашем проекте, и их настройки. Чтобы отключить отдельные валидаторы, снимите флажки рядом с каждым валидатором, который вы хотите отключить. У каждого валидатора есть флажок, чтобы указать, включен ли он для проверки вручную или для сборки.
Том

63

Другие ответы могут сработать для вас, но они не охватили мой случай. Я хотел, чтобы одни XML были проверены, а другие нет. На этом изображении показано, как исключить определенные папки (или файлы) для проверки XML.

Начните с щелчка правой кнопкой мыши по корню вашего проекта Eclipse. Выберите последний элемент: Свойства ...

введите описание изображения здесь

(Если ваш браузер очень мало масштабирует это изображение, щелкните правой кнопкой мыши и откройте в новом окне или вкладке.)

  • Eclipse будет очень чувствительным, если вы нажмете кнопку ** Обзор файла ... * или ** Папка браузера ... *. Этот диалог требует доработки!
  • Это было сделано с помощью Eclipse 4.3 (Kepler).


8

Убедитесь, что ваша кодировка верна для всех ваших файлов. Иногда это может произойти, если у вас неправильная кодировка для вашего файла или неправильная кодировка в вашем заголовке XML.

Итак, если у меня есть следующий файл NewFile.xml:

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

Кодировка eclipse - UTF-8:

Ресурс кодирования Eclipse

Кодировка вашего файла, определенная кодировка в Eclipse (через Свойства-> Ресурс) и объявленная кодировка в XML-документе - все это необходимо согласовать.

Валидатор пытается прочитать файл, ожидая <? Xml ... но, поскольку кодировка отличается от ожидаемой, он не находит его. Отсюда ошибка: в прологе нельзя использовать контент. Пролог - это бит перед объявлением <? Xml.

РЕДАКТИРОВАТЬ: Извините, я не понял, что файлы .xml были сгенерированы и фактически содержат javascript.

Когда вы приостанавливаете работу валидаторов, созданные вами сообщения об ошибках не исчезают. Чтобы они исчезли, вам нужно вручную удалить их.

  1. Приостановить валидаторы
  2. Нажмите на сообщение «Контент не разрешен в прологе», щелкните правой кнопкой мыши и удалите. Вы можете выбрать несколько или все.
  3. Сделайте Project-> Clean. Сообщения не должны возвращаться.

Я думаю, что из-за того, что вы приостановили валидаторы, Eclipse не понимает, что ему нужно удалять старые сообщения об ошибках, которые поступают от валидаторов.


Файлы, созданные SmartGWT, похоже, содержат в себе JavaScript, а не XML, хотя у них странно расширение .ds.xml
Сатиш

Ошибки исчезли, когда я удалил сгенерированный каталог, но когда я очистил проект, ошибки вернулись вместе с каталогом. Валидаторы временно приостановлены.
Сатиш

1

В JBoss Developer 4.0 и выше (на основе Eclipse) это немного проще. Просто щелкните правой кнопкой мыши файл или папку, содержащую файлы на основе xml, выберите «Исключить проверку», затем нажмите «Да» для подтверждения. Затем снова щелкните правой кнопкой мыши те же файлы / папку и нажмите «Проверить», что удалит ошибки с подтверждением.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.