文档类型声明包含或指向的标记声明必须格式正确

时间:2014-07-15 10:53:31

标签: java xml libgdx

所以我使用名为libgdx的库来创建java项目。它有一个自动生成的XML文件,我不知道它是什么。突然,这个xml文件返回一个错误:

  

"文档类型声明包含或指向的标记声明必须格式良好"

不知道xml文件的作用或对xml的任何深入了解我完全不知道如何解决它。 XML代码可以在这里看到:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd">
<module>
    <source path="com/starship/security" />
</module>

2 个答案:

答案 0 :(得分:1)

问题

网址http://google-web-toolkit.googlecode.com/svn/trunk/distro-source/core/src/gwt-module.dtd未指向DTD文件。我不知道它之前是否有过,但现在只要在浏览器中调用此URL就可以看到重定向提示。

重定向会将您指向网址https://gwt.googlesource.com/gwt/+/master/./distro-source/core/src/gwt-module.dtd。但是,在此URL下,您将看到一个显示DTD的简单HTML页面。 您自己没有获得DTD文件。

因此错误消息是正确的。 HTML页面不是有效的DTD。

解决方案

您必须引用有效的DTD。点。

第一个简单的方法 - 您也可以检查行为 - 将此DTD保存到本地硬盘并使用

引用它
<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit trunk//EN" "file:///<absolute-path>/gwt-module.DTD">

事实上,我不知道这个DTD是否是您项目的一部分,或者是否可以在网络上更公开的地方访问。在第一种情况下,您可以使用项目相对路径替换绝对路径。在第二种情况下,您必须替换整个URL。

也许你可以自己排除最后一步的问题。我(不幸的是)我不熟悉GWT。

答案 1 :(得分:0)

似乎是它或它的DTD 2.6版本中的一个错误。诀窍是用第二行代替:

<!DOCTYPE module PUBLIC "-//Google Inc.//DTD Google Web Toolkit 2.5.1//EN" "http://google-web-toolkit.googlecode.com/svn/tags/2.5.1/distro-source/core/src/gwt-module.dtd">

来源: GWT - Module.gwt.xml - XML validation warning