java - 异常 java.lang.NoClassDefFoundError android/app/Activity

标签 java android eclipse exception

在安卓应用中,有:

public class Pars extends Activity{
    public Document docout(){

          InputStream is = getResources().openRawResource(R.raw.talechap01);
        Document docout = null;

         DocumentBuilderFactory domFactory = DocumentBuilderFactory.newInstance();
          DocumentBuilder builder = null;
        try {
            builder = domFactory.newDocumentBuilder();
            docout = builder.parse(is);

        } catch (ParserConfigurationException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return docout;
    }

public class Manager {

    public static String getStory(String spage, Document docs) {

          XPathExpression expr;
          XPath xpath = XPathFactory.newInstance().newXPath();

           Object result = null;
           String num = spage;
           String par = null;

           try {

           expr = xpath.compile("//decision"+num+"/p//text()");

            result = expr.evaluate(docs, XPathConstants.NODESET);
          }

         catch (XPathExpressionException e) {

             e.printStackTrace();
          }

          NodeList nodes = (NodeList) result;

         for (int i = 0; i < nodes.getLength(); i++) {

           par = nodes.item(i).getNodeValue();

           System.out.println(par);
         }
         return par;
      }
}

现在我要测试代码。

public class Test {

    public static void main(String[] args) {

        try {Pars p = new Pars();
        Document doc = p.docout();
        System.out.println(Manager.getStory("000", doc));
        }catch (Exception e){
            e.printStackTrace();
        }
    }
}

我将“测试”作为 Java 应用程序运行,我得到:

Exception in thread "main" java.lang.NoClassDefFoundError: android/app/Activity at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at com.stack.over.Test.main(Test.java:11) Caused by: java.lang.ClassNotFoundException: android.app.Activity at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 13 more

我试图找到修复它的方法,但无法实现。 我从另一个问题得到了这个答案,但我还是个菜鸟,不知道如何解决。

You have defined your Pars class as extending the class Activity. The error you are seeing is telling you that the class android.app.Activity is not available on the classpath. Maybe you need to check which libraries you import. – adamretter Mar 5 at 10:01

谢谢大家。

最佳答案

错误是您尝试将引用 Android 类 (android.app.Activity) 的程序作为常规 Java 程序运行,但其类路径中没有 Android 运行时库。

您应该将 Android 应用作为 Android 应用(在模拟器或设备上)运行,将常规 Java 程序作为常规 Java 程序运行,而不是将两者混用。 Activity 为 Android; main() 方法是常规 Java。

要学习 Android 应用程序开发,您可以从 developer.android.com 开始getting started documentation .

关于java - 异常 java.lang.NoClassDefFoundError android/app/Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22284077/

相关文章:

java - 从 recyclerview 行内的项目调用新 Activity

android - 将JSON数据存储到android中的本地数据库

android - (Android) 如果我只将图像文件放在 drawable-xxhdpi 文件夹中,它是否适用于具有不同密度的所有设备

eclipse - 如何按名称查找 Eclipse 项目和文件夹?

java - Netbeans 的属性窗口中使用了哪些 gui 元素?

Java 接口(interface) : Inheriting, 覆盖和重载方法

java - A*算法Java

java - Atlassian汇合: Macro type plugin that will display a popup window when the page is accessed

java - 找到所需类 javax.faces.FactoryFinder 的多个版本

java - 生成类之间转换的代码