代码之家  ›  专栏  ›  技术社区  ›  Grzenio

巡航控制。网络抱怨xml

  •  1
  • Grzenio  · 技术社区  · 16 年前

    Exception: System.Xml.XmlException: Name cannot begin with the '%' character, hexadecimal value 0x25. Line 17, position 100.
       at System.Xml.XmlTextReaderImpl.Throw(Exception e)
       at System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
       at System.Xml.XmlTextReaderImpl.Throw(Int32 pos, String res, String[] args)
       at System.Xml.XmlTextReaderImpl.ParseQName(Boolean isQName, Int32 startOffset, Int32& colonPos)
       at System.Xml.XmlTextReaderImpl.ParseElement()
       at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
       at System.Xml.XmlTextReaderImpl.Read()
       at System.Xml.XmlWriter.WriteNode(XmlReader reader, Boolean defattr)
       at ThoughtWorks.CruiseControl.Core.Util.XmlFragmentWriter.WriteNode(XmlReader reader, Boolean defattr)
       at ThoughtWorks.CruiseControl.Core.Util.XmlFragmentWriter.WriteNode(String xml)
    

    知道这是哪个xml文件吗?我该如何修复它?令人讨厌的是,构建变为红色,但它没有被添加到最近的构建网页中。

    编辑 让我澄清一下:这发生在构建结束时,可能是当它试图生成构建报告xml或其他东西时(我禁用了所有合并发布器)

    4 回复  |  直到 16 年前
        1
  •  1
  •   Drew Noakes    16 年前

    ccnet.config 由于堆栈帧,文件:

    System.Xml.XmlWriter.WriteNode
    

    …我不相信CC.NET会写回自己的

    如果您使用的是统计数据,您可能会发现此问题是由统计文件引起的。就像我说的,很难说没有更完整的堆栈痕迹。

    编辑

    我突然想到,这个问题可能与发布者步骤合并文件有关。在你的

    在我的配置文件中,有问题的步骤看起来像这样:

    <publishers>
      <merge>
        <files>
          <file>E:\Blah\Cruise Reports\*.xml</file>
        </files>
      </merge>
      ....
    

    查看该文件夹并检查 %

        2
  •  1
  •   Grzenio    16 年前

    最终找到了问题:构建使用Nant完成了大部分任务,Nant配置不正确:

    • log4net被配置为在<>nant.exe.config中的括号

    因此,当ccnet试图将nant输出与构建输出合并时,构建失败了。

        3
  •  0
  •   Pedro    16 年前

        4
  •  0
  •   Tim Cooper    13 年前

    最可能

    推荐文章