Giter Site home page Giter Site logo

Build failing with `NoSuchMethodError: ...VariantManager.getVariantScopes()Ljava/util/List` when using Android Gradle Plugin 4.1.0 about android-gradle-aspectj HOT 10 OPEN

oakkitten avatar oakkitten commented on May 24, 2024 6
Build failing with `NoSuchMethodError: ...VariantManager.getVariantScopes()Ljava/util/List` when using Android Gradle Plugin 4.1.0

from android-gradle-aspectj.

Comments (10)

jiechic avatar jiechic commented on May 24, 2024 7

@Archinamon when will publish Android-Gradle-Aspectj:4.3.0 for fix AGP 4.1.0 bug?you merge PR #128 but isn't published

from android-gradle-aspectj.

akaita avatar akaita commented on May 24, 2024 1

I couldn't wait more for a version compatible with AGP4.1 so I ended up compiling the latest code and sending it to JCenter.
In case it's helpful to others: implementation 'com.akaita.android:android-gradle-aspectj:4.3.0'

from android-gradle-aspectj.

oakkitten avatar oakkitten commented on May 24, 2024 1

in case someone needs this, here's a manual way of weaving aspectj on android. you will have to tweak the Transform a bit to suite your needs but it's gradle kotlin dsl, only depends on aspectjtools & aspectjrt, and even deals with some nasty windows issue of gradle not releasing some file locks

https://stackoverflow.com/a/64673644/1449683

from android-gradle-aspectj.

akaita avatar akaita commented on May 24, 2024

The official 4.3.0 was just released. Please hit that one https://bintray.com/archinamon/maven/android-gradle-aspectj/4.3.0

from android-gradle-aspectj.

cyangibm avatar cyangibm commented on May 24, 2024

@Archinamon when will publish Android-Gradle-Aspectj:4.3.0 for fix AGP 4.1.0 bug?you merge PR #128 but isn't published

Got stuck using AGP 4.0.0 due to this issue, please help!

from android-gradle-aspectj.

cyangibm avatar cyangibm commented on May 24, 2024

@Archinamon when will publish Android-Gradle-Aspectj:4.3.0 for fix AGP 4.1.0 bug?you merge PR #128 but isn't published

Any idea when it could get merged? It's been a blocker and my project couldn't use 4.3.0 at all. Thanks!

from android-gradle-aspectj.

jdvp avatar jdvp commented on May 24, 2024

@cyangibm For reference, that PR is merged in 4.3.0

from android-gradle-aspectj.

cyangibm avatar cyangibm commented on May 24, 2024

Hmm..When I try to run my app using 4.3.0, the app would crash with class resolution error, please see below:

AspectJ Plugin 4.3.0
Gradle 6.5.1/6.1.1
AGP 4.1.1

2021-01-19 15:17:06.608 10519-10519/com.cxa E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.cxa, PID: 10519
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/R$drawable;
at androidx.appcompat.widget.AppCompatDrawableManager$1.(AppCompatDrawableManager.java:63)
at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57)
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:336)
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:286)
at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:230)
at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:554)
at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:107)
at android.app.Activity.attach(Activity.java:7893)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3295)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3485)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2045)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7478)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/~~GyLFl18w-_vYxzan_N4p7Q==/com.cxa-YdwwJY1W7Bugh6V0o9WuuA==/base.apk"],nativeLibraryDirectories=[/data/app/~~GyLFl18w-_vYxzan_N4p7Q==/com.cxa-YdwwJY1W7Bugh6V0o9WuuA==/lib/x86, /system/lib, /system_ext/lib, /product/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at androidx.appcompat.widget.AppCompatDrawableManager$1.(AppCompatDrawableManager.java:63) 
at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57) 
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:336) 
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:286) 
at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:230) 
at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:554) 
at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:107) 
at android.app.Activity.attach(Activity.java:7893) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3295) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3485) 
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2045) 
at android.os.Handler.dispatchMessage(Handler.java:106) 
at android.os.Looper.loop(Looper.java:223) 
at android.app.ActivityThread.main(ActivityThread.java:7478) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941) 

from android-gradle-aspectj.

jdvp avatar jdvp commented on May 24, 2024

@cyangibm ah yes, I actually had the exact same problem. That's actually a separate issue (#108) caused by a fix for #122 . I had commented on #122 mentioning that it had broken it but never heard back from the contributor that had made the change.

Personally, I decided to switch aspect plugins for my own projects as the resolution of issues 108 and 122 seem to be incompatible and IDK if someone will be able to figure it all out. However, if you are using more advanced features from this plugin, I don't know if switching plugins would work for you.

from android-gradle-aspectj.

cyangibm avatar cyangibm commented on May 24, 2024

I couldn't wait more for a version compatible with AGP4.1 so I ended up compiling the latest code and sending it to JCenter.
In case it's helpful to others: implementation 'com.akaita.android:android-gradle-aspectj:4.3.0'

Hello,

I tried your plugin link, however, also getting below crash when using AGP 4.1.1:

2021-01-20 10:50:37.686 5635-5635/com.cxa E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.cxa, PID: 5635
java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/appcompat/R$drawable;
at androidx.appcompat.widget.AppCompatDrawableManager$1.(AppCompatDrawableManager.java:63)
at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57)
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:336)
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:286)
at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:230)
at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:554)
at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:107)
at android.app.Activity.attach(Activity.java:7893)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3295)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3485)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2045)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7478)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.appcompat.R$drawable" on path: DexPathList[[zip file "/data/app/~~xCH6ru24VPAVPhLSrJwxtA==/com.cxa-mmJx_VjiFSMoSKJ3Zd0Lgg==/base.apk"],nativeLibraryDirectories=[/data/app/~~xCH6ru24VPAVPhLSrJwxtA==/com.cxa-mmJx_VjiFSMoSKJ3Zd0Lgg==/lib/x86, /system/lib, /system_ext/lib, /product/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at androidx.appcompat.widget.AppCompatDrawableManager$1.(AppCompatDrawableManager.java:63) 
at androidx.appcompat.widget.AppCompatDrawableManager.preload(AppCompatDrawableManager.java:57) 
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:336) 
at androidx.appcompat.app.AppCompatDelegateImpl.(AppCompatDelegateImpl.java:286) 
at androidx.appcompat.app.AppCompatDelegate.create(AppCompatDelegate.java:230) 
at androidx.appcompat.app.AppCompatActivity.getDelegate(AppCompatActivity.java:554) 
at androidx.appcompat.app.AppCompatActivity.attachBaseContext(AppCompatActivity.java:107) 
at android.app.Activity.attach(Activity.java:7893) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3295) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3485) 
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2045) 
at android.os.Handler.dispatchMessage(Handler.java:106) 
at android.os.Looper.loop(Looper.java:223) 
at android.app.ActivityThread.main(ActivityThread.java:7478) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:549) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941) 

from android-gradle-aspectj.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.