我尝试在netbeans 10中创建一个新的调色板,但是以下两个错误使我无法编译该项目:
文档根元素“文件夹”必须与DOCTYPE根“ JavaPalette”匹配。 [3]
根元素后的文档中的标记必须格式正确。 [11]
我的XML如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<folder name="JavaPalette">
<folder name="Items">
<attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.javasourcefilepalette.Bundle"/>
<file name="Item.xml" url="resources/Item.xml">
<attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.javasourcefilepalette.Bundle"/>
</file>
</folder>
</folder>
<filesystem/>
我不知道这两个错误消息的含义,但是我完全按照教程中的内容进行操作。 在线验证xml文件也会显示该错误。
https://platform.netbeans.org/tutorials/nbm-palette-api2.html
答案 0 :(得分:1)
我没有按照教程进行操作,但据我所知,您的filesystem
标签无效。如果看一下DTD,您会发现元素filesystem
没有声明为EMPTY
(有关更多信息,您可以阅读有关here的更多信息)。因此,您必须提供一个开始和结束标签。在您发布的示例中,您仅使用<filesystem/>
,这是不允许的。
您必须按如下所示更改xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE filesystem PUBLIC "-//NetBeans//DTD Filesystem 1.2//EN" "http://www.netbeans.org/dtds/filesystem-1_2.dtd">
<filesystem>
<folder name="JavaPalette">
<folder name="Items">
<attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.javasourcefilepalette.Bundle"/>
<file name="Item.xml" url="resources/Item.xml">
<attr name="SystemFileSystem.localizingBundle" stringvalue="org.netbeans.modules.javasourcefilepalette.Bundle"/>
</file>
</folder>
</folder>
</filesystem>