netbeans的layer.xml有什么问题?

问题描述 投票:1回答:1

我尝试在netbeans 10中创建一个新的调色板,但是以下2个错误不允许我编译项目:

文档根元素“文件夹”必须与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

netbeans netbeans-8 netbeans-10
1个回答
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>
© www.soinside.com 2019 - 2024. All rights reserved.