Java:xmlpull 给我编译错误(http://www.xmlpull.org/)

Lut*_*her 3 java xml parsing

我正在学习 xml 解析,我想使用 xmlpull.org 的 api。

我已经从http://www.xmlpull.org/v1/download/下载了“xmlpull_1_0_5.jar”文件并将其包含在我的参考库中。

然后编写以下代码(在Eclipse中):

import java.io.IOException;
import java.io.StringReader;

import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;

public class Collections {
    public static void main (String args[])
            throws XmlPullParserException, IOException
        {
            XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
            factory.setNamespaceAware(true);
            XmlPullParser xpp = factory.newPullParser();
            System.out.println("parser implementation class is "+xpp.getClass());


        }

}
Run Code Online (Sandbox Code Playgroud)

问题是当我编译时出现此错误:

线程“main”org.xmlpull.v1.XmlPullParserException 中出现异常:无法加载任何工厂类(即使是小型或完整的默认实现);嵌套异常是: org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:225) 处的 org.kxml2.io.XmlReader 处 org.xmlpull.v1.XmlPullParserFactory.newInstance(XmlPullParserFactory.java:76) 处 Collections.main( Collections.java:12)

怎么会这样,请帮忙?

Gre*_*eek 5

首先,这不是编译器错误,因为它不会在编译时发生。这是一个运行时错误。

错误的原因是 xmlpull 只是一个 api - 它需要适当的 xml pull 解析器实现。

正如他们的主页所说,

如何使用它?

XMLPULL API 可免费使用。您可以将 XmlPull API 下载为 tarball 或 zip 文件。我们还通过匿名 CVS 提供对最新 API 版本的访问。

然而,要使用 XMLPULL,您需要下载 XmlPull API 的实现。

请参阅http://www.xmlpull.org/impls.shtml#xmlpull以获取可以下载的实现。