0

SDKをr20に更新したばかりで、Ice CreamSandwich4.1エミュレーターでアプリをテストしたいと考えていました。新しいデータベースを作成しようとするとクラッシュしたときに、アプリに6行しか表示されません。

 gradeBookDbAdapter mDbHelper = new gradeBookDbAdapter(this);  <--- fails here

 private static class DatabaseHelper extends SQLiteOpenHelper {

    DatabaseHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    public gradeBookDbAdapter(Context ctx) {                <-- but it never gets here
    this.mCtx = ctx;
    }
  <snip...</snip>

「java.lang.VerifyError:」でクラッシュする前に、コンストラクターを使用して実行可能コードを実行することさえできません。

Excelファイルの読み取り/書き込みに外部ライブラリJexecelapiを使用しています。これは、3つの主要なリビジョンを最初に含めて以来、問題なく機能しています。しかし今、私のLogCatはこう言っています:

07-08 18:21:38.185: I/dalvikvm(861): Could not find method jxl.Workbook.getWorkbook,     referenced from method com.ulsanonline.gradebook2.gradeBookDbAdapter.readExcel
07-08 18:21:38.185: W/dalvikvm(861): VFY: unable to resolve static method 1084: Ljxl/Workbook;.getWorkbook (Ljava/io/File;)Ljxl/Workbook;
07-08 18:21:38.185: D/dalvikvm(861): VFY: replacing opcode 0x71 at 0x001b
07-08 18:21:38.185: W/dalvikvm(861): VFY: unable to resolve exception class 290 (Ljxl/read/biff/BiffException;)
07-08 18:21:38.185: W/dalvikvm(861): VFY: unable to find exception handler at addr 0x5c
07-08 18:21:38.185: W/dalvikvm(861): VFY:  rejected Lcom/ulsanonline/gradebook2/gradeBookDbAdapter;.readExcel (Ljava/lang/String;)V
07-08 18:21:38.185: W/dalvikvm(861): VFY:  rejecting opcode 0x0d at 0x005c
07-08 18:21:38.185: W/dalvikvm(861): VFY:  rejected Lcom/ulsanonline/gradebook2/gradeBookDbAdapter;.readExcel (Ljava/lang/String;)V
07-08 18:21:38.185: W/dalvikvm(861): Verifier rejected class Lcom/ulsanonline/gradebook2/gradeBookDbAdapter;
07-08 18:21:38.195: D/AndroidRuntime(861): Shutting down VM
07-08 18:21:38.195: W/dalvikvm(861): threadid=1: thread exiting with uncaught exception (group=0x409c01f8)
07-08 18:21:38.205: E/AndroidRuntime(861): FATAL EXCEPTION: main
07-08 18:21:38.205: E/AndroidRuntime(861): java.lang.VerifyError: com/ulsanonline/gradebook2/gradeBookDbAdapter

そのため、最初の投稿では、クラッシュの上のlogcatテキストに気付かず、メインエラーから南に向かっていただけでした。私のライブラリが今失敗する理由は何ですか?

4

2 に答える 2

1

新しいSDKを使用すると、参照したライブラリを/libsフォルダーに配置する必要がありました。それは問題を修正したようです。– </ p>

于 2012-07-08T11:23:51.713 に答える
0

1.プロジェクトディレクトリで.classpathファイルを開きます。

2.exported ="true"classpathentryタグに追加します。そのような :

古い:classpathentry kind = "lib" path = "libs / httpmime-4.0.1.jar"

新規:classpathentry export = "true" kind = "lib" path = "libs / httpmime-4.0.1.jar"

3.保存して再試行します。

于 2013-09-12T08:26:26.660 に答える