0

为什么我的应用在模拟器上显示后一直崩溃?我刚开始学习 Jsoup 解析并遵循不同的 tuts,但我找不到此错误的解决方案。

package com.example.testingjson;

import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;


public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
         // process

         Document doc;
            try {
                doc = Jsoup.connect("http://google.com/").get();
                String title = doc.title();
             System.out.print(title);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            }




    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;

    }

}

这是错误消息

12-26 19:30:42.043: E/AndroidRuntime(4260): FATAL EXCEPTION: main
12-26 19:30:42.043: E/AndroidRuntime(4260): java.lang.NoClassDefFoundError: org.jsoup.Jsoup
12-26 19:30:42.043: E/AndroidRuntime(4260):     at com.example.testingjson.MainActivity.onCreate(MainActivity.java:22)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.Activity.performCreate(Activity.java:5104)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.ActivityThread.access$600(ActivityThread.java:141)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.os.Handler.dispatchMessage(Handler.java:99)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.os.Looper.loop(Looper.java:137)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at android.app.ActivityThread.main(ActivityThread.java:5039)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at java.lang.reflect.Method.invokeNative(Native Method)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at java.lang.reflect.Method.invoke(Method.java:511)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
12-26 19:30:42.043: E/AndroidRuntime(4260):     at dalvik.system.NativeStart.main(Native Method)

编辑:这是一张显示导入的 JSOUP jar 文件的图片,但我仍然收到错误消息。 在此处输入图像描述

APK 文件用 Winrar 打开。

在此处输入图像描述

订单和出口设置

在此处输入图像描述

4

2 回答 2

0

您能否打开您的 apk 并检查 apk 的 libs 文件夹中是否存在 jsoup lib?如果不是,则意味着它尚未添加到构建中。下一步是进行清理,确保删除先前构建的 apk,将 jsoup 复制到 libs 文件夹并重建 apk。检查 jsoup 是否已复制到新创建的 apk。

于 2013-01-09T00:32:20.293 回答
0

您需要将 JSOUP jar 文件导入到您的项目中。如果您在 Eclipse 上,最简单的方法是将它放在 libs 文件夹中,并且它应该在构建时自动添加,或者您可以右键单击项目,构建路径 -> 添加外部档案。有时我在将某些 jar 导入项目时也遇到了问题,但通过构建 proj 几次或重新启动 eclipse 都解决了。

于 2013-01-09T00:01:18.900 回答