2017-03-10 8 views
0

2.3にAndroidスタジオバージョンを、3.3にgradleバージョンを、android gradleプラグインバージョンを2.3.0に、buildToolsVersionバージョンを25.0.0にアップグレードすると、問題が発生しますアプリケーションをパッケージ化するには、このコマンド「gradlew assembleRelease」を使用します。タスク ':app:transformClassesAndResourcesWithProguardForXXXRelease'の実行に失敗しました

Shrinking... 
Printing usage to [E:\workspace\android_source\src\app\build\outputs\mapping\XXX\release\usage.txt]... 
Removing unused program classes and class elements... 
    Original number of program classes: 10650 
    Final number of program classes: 10247 
Optimizing... 
Warning: Exception while processing task java.io.IOException: java.lang.NullPointerException 
:app:transformClassesAndResourcesWithProguardForXXXRelease FAILED 

FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':app:transformClassesAndResourcesWithProguardForXXXRelease'. 
> Job failed, see logs for details 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 

BUILD FAILED 

Total time: 1 mins 34.554 secs 

が、私は23.0.1にアンドロイドのGradleバージョン2.2.3へのプラグイン、およびbuildToolsVersionをダウングレードすると、それはうまく動作します。

+1

あなたのビルドツールとGradleをさらにアップデートすることができます。 –

+0

しかし、それは最新です – forevas

+0

彼らはそうではありません。 Gradleは3.4、ビルドツールは25より大きい –

答えて

0

私はこの問題を解決しました。これは、Proguardバージョンが低すぎるためです.Greleleプラグインを更新すると、バージョンが2.3.0より大きく、Proguardバージョン5.3.2以降を使用する必要があります。

1.Addあなたのbuild.gradleファイルのビルドスクリプトの方法でこれらのコード:

buildscript { 
    ... 
    configurations.all { 
    resolutionStrategy { 
     force 'net.sf.proguard:proguard-gradle:5.3.3' 
    } 
    } 
} 

が、その後、再パッケージ化高ProGuardのバージョンを使用する方法を、ここでは2つのソリューションです。この link .thenによってダウンロードproguard.jar 2.To

、あなたのbuild.gradleファイルにこれらのコードを追加し、このフォルダにjarファイルを入れて、あなたのプロジェクトのルートパスにフォルダを作成します。

buildscript { 
    repositories { 
     flatDir{dirs 'proguard'} 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.3.3' 
     classpath ':proguard:' 
    } 
} 

その後、リパッケージします。

関連する問題