LoginSignup
6
2

More than 5 years have passed since last update.

リリースビルドがtransformClassesAndResourcesWithProguardForReleaseの時点で失敗する問題

Last updated at Posted at 2017-04-20
Warning: Exception while processing task java.io.IOException: java.lang.IllegalArgumentException: Overflow of unsigned short value [66077]
:app:transformClassesAndResourcesWithProguardForRelease FAILED

こういうのが出てきちゃう方向け。

2017.6.1追記

Gradle Plugin for Android v3.0.0-alpha2ではProguard v5.3.3が採用されていることを確認しました。

tldr;

  • Proguard v5.3.3で直ってるよ
  • Gradle Plugin for Android v2.3.1やv2.4.0-alpha6にはProguard v5.3.2が入ってるから、問題にぶち当たった人は自分で設定してv5.3.3に上げてね

原因

16bitっぽい話なのでmultidexの問題なのかなと思ってしばらく調べていたのですが、どうやら素直にタスク名のとおりにProguardの問題として見ればよかったようです。

同様の問題がProguardのIssueに報告されていました。

本筋の議論が行われていたのは#623のほうだったようです。

既にパッチのやりとりも終わり、修正版のProguard v5.3.3ではこの問題は起こらなくなっています。

ここで問題が。

buildEnvironment
$ ./gradlew buildEnvironment
...
:buildEnvironment

------------------------------------------------------------
Root project
------------------------------------------------------------

classpath
+--- com.android.tools.build:gradle:2.3.1
|    \--- com.android.tools.build:gradle-core:2.3.1
|         +--- com.android.tools.build:builder:2.3.1
...
|         +--- net.sf.proguard:proguard-gradle:5.3.2
|         |    \--- net.sf.proguard:proguard-base:5.3.2

僕らの手元にはProguard 5.3.3が無い・・・!

Gradle Plugin for Android v2.4.0-alpha6でもProguardのバージョンは同じだったので、たぶんしばらくこのままでしょう。

Proguard 5.3.3を導入する

ないなら入れましょう。

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

参考: How to upgrade ProGuard for Android? - Stack Overflow

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2