错误:处理指令目标匹配"[xX][mM][lL]"是不允许的

这个错误,

不允许处理指令目标匹配“[xX][mM][lL]”

每当我运行以如下开头的XSLT页面时,都会发生这种情况:

<?xml version="1.0" encoding="windows-1256"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:include href="../header.xsl"/>
<xsl:template match="/">
<xsl:call-template name="pstyle"/>
<xsl:call-template name="Validation"/>
<xsl:variable name="strLang">
<xsl:value-of select="//lang"/>
</xsl:variable>
<!-- ////////////// Page Title ///////////// -->
<title>
<xsl:value-of select="//ListStudentFinishedExam.Title"/>
</title>

请注意:我删除了第一行之前的任何前导空格,但错误仍然发生!

293181 次浏览

基于xerces的工具将发出以下错误

The processing instruction target matching "[xX][mM][lL]" is not allowed.

当遇到XML声明

这是一条有效的诊断消息;在这种情况下,其他XML解析器应该发出类似的错误消息。

要纠正该问题,请检查以下可能性:

  1. <?xml ?>之前存在一些空白或其他可见内容 声明。< /强> < / p >

    决议:删除空格或任何其他空格

  2. 一些看不见的内容存在于<?xml ?>之前 声明。最常见的是字节顺序标记 (BOM) < / > . < / p > < p > 决议: 使用W3C所建议的技术删除BOM

  3. A stray <?xml ?>声明存在于XML内容中。 这种情况可能发生在以编程方式组合XML文件或 通过剪切和粘贴。只能有一个<?xml ?>声明

    . XML文件中,它只能在顶部

    决议:搜索 <?xml不区分大小写,并删除除顶部XML以外的所有XML

  4. .

上述错误的另一个原因是损坏的jar文件。我得到了同样的错误,但Junit运行单元测试时。删除jar并再次下载解决了这个问题。

XML中有自动生成的版权信息,在<resources>标记之前有一个空行,一旦我删除了它,我的构建就成功了。

enter image description here

在我的情况下是一个错误的路径在配置文件:文件没有找到(路径是错误的),它出现了这个异常:

从输入流配置错误。最初的原因是加工 不允许指令目标匹配“[xX][mM][lL]”

我在5000个目录中的50,000个rdf/xml文件中遇到了类似的问题(Project Gutenberg目录文件)。我用riot(耶拿分布)解决了它

目录为cache/epub/NN/ NN。rdf(其中NN是一个数字)

在所有文件所在目录的上面的目录中,即在缓存中

riot epub/*/*.rdf --output=turtle > allTurtle.ttl

这可能会产生许多警告,但结果的格式可以加载到jena(使用fuseki web界面)。

出人意料的简单(至少在这种情况下)。

对于PHP,在开始打印XML之前放入这行代码:

while(ob_get_level()) ob_end_clean();

调试XML文件。要么有空间,要么添加了额外或更少的标签。

为了更好地理解,可以通过命令行构建项目。Windows: gradlew build

在我的例子中,AndroidManifest.xml在第一行有一个空格

<Empty Row> // This Creates the issue
<?xml version="1.0" encoding="utf-8"?>

在我的例子中,我删除了所有空白,而不需要代码。这个方法奏效了

有必要检查服务器的文件夹,看看是否有丢失的pom.xml文件。

我发现我遇到了其他人所描述的使用格式不正确的pom.xml的问题,但是在一个我没想到会在服务器上的文件夹中。一个旧建筑还在附近,不受欢迎。

对我来说,账单就是麻烦制造者。将标签替换为空白应该可以解决问题

只要删除这一行:<?xml version="1.0" encoding="utf-8"?>,因为这种错误只会因为这一行出现,或者你也可以根据这个答案中提到的行检查你的行格式。

对我来说,中的一个.xml文件中的文件的顶部中的注释块(<!-- ... -->)导致了这个问题。

将注释移动到<?xml version="1.0" encoding="utf-8"?>行之后,问题解决了!