繁体   English   中英

如何解决 Jenkins 中的 SAXParseException?

[英]How to solve the SAXParseException in Jenkins?

我正在尝试使用 Jenkins 部署我的项目,但我总是收到以下错误:

org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.

我尝试了很多解决方案,但我无法解决这个问题。

  • 我的 xml 文件具有 UTF-8 编码。
  • 我已经用十六进制编辑器阅读了我的 xml 文件,它在文档的开头没有空格。
  • 我试图创建一个新的文本文件并将 xml 文件的内容复制到新文档中,并将扩展名从“txt”更改为“xml”。

我的 xml 文档以这种方式开始:

<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <artifactId>...</artifactId>
        <groupId>...</groupId>
        <version>...</version>
    </parent>

    <groupId>...</groupId>
    <artifactId>...</artifactId>
    <version>...</version>
    <description>...</description>
    <packaging>...</packaging>
    <name>...</name>

你可以帮帮我吗?

几乎可以肯定这是文件编码问题,可能是由于BOM ,有关详细信息,请参阅此答案

你可以做两件事:

  1. 从 pom.xml 中删除 BOM 并使用与 Jenkins 的 JVM 配置相同的编码对其进行编码

  2. 配置 Jenkins 的 JVM 以使用不同的编码,详情请参阅此答案

消息“序言中不允许使用内容”通常意味着 Xerces 开始读取文件的内容,并且它发现的第一件事不是<

该问题的一个非常常见的原因是您没有解析您认为的内容。 例如,当您将文件的 URI 提供给实际需要文件内容的 API 时,就会发生这种情况。

因此,解决方案可能是您错误地调用了解析器。 当然,我们无法确定这是否适用于这里,因为您还没有告诉我们您如何调用解析器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM