在Eclipse中禁用XML验证

问题描述:

我的Eclipse在每次保存文件时验证XML文件,并且需要一段时间来验证它们。 该项目使用gwt-maven-plugin创建。在Eclipse中禁用XML验证

的XML文件不是下在Eclipse任何来源的文件夹的构建路径,它们是在src通过SmartGWT的自动生成/主/ web应用/ [GwtModule]>/SC

而且所有这些XML文件都标有错误“内容在prolog中是不允许的”并且每次运行项目时我都必须确认我想运行错误的项目,尽管没有(并且一切正常)。

我试着在Eclipse-> Window-> Preferences - > Validation下挂起所有Validators,但无济于事。

任何想法如何我可以阻止Eclipse每次恼人的我?

+0

Preferences..xml..xml files..validation –

+0

@EdStaub更改其中任何品牌的没有什么区别 – Satish

+1

@Satish,你能请注明我的答案是正确的答案。 –

你有两个选择:

  1. 配置工作区设置(禁用当前工作空间的验证):转到窗口>首选项>验证,并取消了手动和构建:XML架构验证, XML验证

  2. 检查使项目特定设置(禁用此项目的验证):在项目上单击右键,选择属性>验证,并取消了手动和构建:XML架构验证,XML验证

该项目右键单击并选择验证作出错误消失。

+3

在较新版本的Eclipse中,菜单结构似乎发生了变化 - 至少我的Eclipse Mars安装没有“XML Schema Validator”条目。相反,项目的上下文菜单列出了“验证”下的每个验证,正如kevinarpe的回答中所述。 –

+2

是比较晚近的Eclipse版本: 单击窗口>首选项,然后在左窗格中选择验证。 “首选项”窗口的“验证”页面列出项目中可用的验证器及其设置。 要禁用单个验证器,请清除您要禁用的每个验证器旁边的复选框。每个验证器都有一个复选框,用于指定是启用手动验证还是构建。 – Tom

确保您的编码对所有文件都是正确的,如果您的文件的编码错误或XML标头中的编码错误,有时会发生这种情况。

所以,如果我有以下NewFile.xml:

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

和Eclipse编码为UTF-8:

Eclipse Encoding Resource

文件,定义的编码中的编码Eclipse(通过属性 - >资源)和XML文档中声明的编码都需要同意。

验证器试图读取该文件,期望<?xml ...但由于编码与预期不同,所以没有找到它。因此错误:在prolog中不允许使用内容。序言是<?xml声明之前的位。

编辑:对不起,没有意识到.xml文件生成,实际上包含JavaScript。

当您暂停验证器时,您生成的错误消息不会消失。为了让它们消失,你必须手动删除它们。

  1. 暂停验证
  2. 单击“内容没有在序言中不允许”消息,右键单击并删除。您可以选择多个或全部。
  3. 做一个项目 - >清洁。消息不应该回来。

我认为,因为您已经暂停验证器,Eclipse并没有意识到它必须删除来自验证器的旧错误消息。

+0

通过SmartGWT的生成的文件似乎包含JavaScript在他们,而不是XML,但他们古怪有.ds.xml扩展 – Satish

+0

更新了答案:您需要删除时,我删除生成的目录手动 –

+0

的误差消失的消息,但当我清理项目时,错误与目录一起回来。验证器一直处于暂停状态。 – Satish

其他的答案可能会为你工作,但他们并不能掩盖我的情况。我想要一些 XML被验证,而其他的没有。该图显示了如何排除用于XML验证的某些文件夹(或文件)。

通过右键单击您的Eclipse项目的根目录开始。选择最后一项:属性...

enter image description here

(如果您的浏览器扩展这一形象非常小,点击右键,在新窗口或标签中打开)

  • Eclipse中出现如果您点击** Browse File ... *或** Browser Folder ... *按钮,则会非常敏感。这个对话框需要一些工作!
  • 这是使用Eclipse 4.3(开普勒)来完成。

在JBoss Developer 4.0及更高版本(基于Eclipse)中,这样做更简单一些。只需右键单击包含基于xml文件的文件或文件夹,选择“排除验证”,然后单击“是”进行确认。然后再次右键单击相同的文件/文件夹并单击“验证”,这将通过确认消除错误。

窗口>首选项>验证>取消选中XML验证手册,并建立 enter image description here