我必须调试一个使用 Scala 2.8.1 中的 scala.xml 的项目。我遇到的一个错误显示了以下堆栈跟踪(省略了不相关的部分):
--- more xerces stacktrace lines ---
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
at scala.xml.factory.XMLLoader$class.loadXML(XMLLoader.scala:40)
at scala.xml.XML$.loadXML(XML.scala:40)
at scala.xml.factory.XMLLoader$class.loadString(XMLLoader.scala:59)
at scala.xml.XML$.loadString(XML.scala:40)
at pt.cnbc.wikimodels.util.SBMLHandler.wrapHTML(SBMLHandler.scala:99)
我正在使用 Intellij IDEA,我想单击堆栈跟踪行并转到源代码,即使在当前显示“未知源”的行中也是如此。
请注意:
- 给出错误的 XML 文件是有效的(而且很大)
- 我只在获取文件内容后调用XML.loadString
- 如果您有不同的“想法”,我不介意做一些超出 IDEA 范围的事情。 :)
最佳答案
显示“未知来源”的行来自缺少调试信息的文件。在本例中是Xerces
。 IntelliJ 与此无关。您可以做的(但我还没有尝试过)是获取 Xerces 的源代码并重新编译它们,以确保包含调试信息。然后在类路径中使用生成的 jar。
关于xml - 我正在使用 Intellij IDEA。如何为 scala.xml 使用的 xerces stacktrace 提供 "view source"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6462761/