2016-11-24 7 views
0

私はポケットアプリのようなテキスト記事を取得するためにボイラーパイプを使用しようとしています。異なる方法で をライブラリに追加Androidスタジオ:ボイラーパイプからのjava.lang.NoClassDefFoundError

  1. 清潔でプロジェクト
  2. gradlewクリーン
  3. を構築する:アプリケーションが正常にコンパイルが、実行時例外を与える:ここで

    java.lang.RuntimeException: An error occurred while executing doInBackground() 
        at android.os.AsyncTask$3.done(AsyncTask.java:309) 
        at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354) 
        at java.util.concurrent.FutureTask.setException(FutureTask.java:223) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:242) 
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:818) 
        Caused by: java.lang.NoClassDefFoundError: de.l3s.boilerpipe.sax.BoilerpipeHTMLParser 
        at de.l3s.boilerpipe.sax.BoilerpipeSAXInput.getTextDocument(BoilerpipeSAXInput.java:51) 
        at de.l3s.boilerpipe.extractors.ExtractorBase.getText(ExtractorBase.java:69) 
        at de.l3s.boilerpipe.extractors.ExtractorBase.getText(ExtractorBase.java:87) 
        at com.example.pushpankar.fastreader.ReadView$fetchUrlTxt.doInBackground(ReadView.java:154) 
        at com.example.pushpankar.fastreader.ReadView$fetchUrlTxt.doInBackground(ReadView.java:147) 
        at android.os.AsyncTask$2.call(AsyncTask.java:295) 
        at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)  
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)  
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)  
        at java.lang.Thread.run(Thread.java:818)  
    

    は、私はすでに試してみました事があります

githubに同じバグが投稿されていました。ここで

は私のbuild.gradleです:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.0" 
    defaultConfig { 
     applicationId "com.example.pushpankar.fastreader" 
     minSdkVersion 16 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
}) 
    compile project(':boilerpipe-1.2.0-android') 
    compile project(':xerces-for-android') 
    compile project(':nekohtml') 
    compile 'com.android.support:appcompat-v7:25.0.1' 
    compile 'com.android.support:support-v4:25.0.1' 
    testCompile 'junit:junit:4.12' 
    compile files('libs/slf4j-android-1.6.1-RC1.jar') 
} 
+0

[AndroidのJavaライブラリのコードにNoClassDefFoundErrorが重複している可能性があります](http://stackoverflow.com/questions/8678630/noclassdeffounderror-for-code-in-an-java-library-on-android) – sushildlh

+0

アンドロイドスタジオにも同様のアプローチがありますが、うまくいきませんでした。 – user3125971

答えて

0

は、あなたが他の文字にそれを名前を変更し、これはエラーを与えるいくつかの難読化ツールを使用しているようですか?

+0

私は "obfuscator"を使用しているとは思わない。私はこの言葉をはじめて聞いたことがあります。 – user3125971

+0

obfuscatorは、android example proguardのコード/リソースを縮小するために使用されます。BoilerpipeHTMLParserが正しいpakageにあることを確認できますか? – SaravInfern

+0

はいBoilerpipeHTMLParserはパッケージに含まれています。 – user3125971

関連する問題