Closed androidKy closed 2 years ago
作者给的demo是可以跑起来的,但照着demo把插件移到我的项目就不行了,因为我的项目的第三方jar和aar和远程依赖库有点多,感觉是哪个库引起的问题,然后也配置了exclude '.jar'和exclude '.aar',还是会报错
@androidKy 你可以先升级到最新版本,仍然出错的话,就exclude掉这个的来源:
Caused by: org.aspectj.weaver.BCException: Whilst processing type 'Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1$1;' - cannot cast the outer type to a reference type. Signature=Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1; toString()=leakcanary.internal.activity.screen.HeapAnalysisFailureScreen$createView$1$1 class=HeapAnalysisFailureScreen$createView$1$1
@androidKy 你可以先升级到最新版本,仍然出错的话,就exclude掉这个的来源:
Caused by: org.aspectj.weaver.BCException: Whilst processing type 'Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1$1;' - cannot cast the outer type to a reference type. Signature=Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1; toString()=leakcanary.internal.activity.screen.HeapAnalysisFailureScreen$createView$1$1 class=HeapAnalysisFailureScreen$createView$1$1
现在已经是最新版本3.2.0了,想问下可以这样去掉去掉jar和aar包的来源的吗?exclude ".jar", ".aar",我测了一下好像不生效的,只能通过类的路径exclude
而且最神奇的是我把这些lib和aar复制到demo去,又没报这个错,gradle版本都一致
看你上面的错误堆栈,明显不是最新版本,你如果是从旧版本插件升级到3.2.0,可以先clean一下工程。
嗯,升级到3.2.0了并且exclude掉报错的那些lib,但不知道为啥会报duplicate_classes的错误.
Task :app:mergeProjectDexDebug FAILED AGPBI: {"kind":"error","text":"Type com.google.gson.annotations.Expose is defined multiple times: /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/8361f51ef64e50176085885c495666b0ceaca41a425690f59725ad034931c8cc_0.jar:classes.dex, /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/a3af66a5125eeca3f668f48c73e59b1d680df1653b5306fceb4fafd8f0f51799_0.jar:classes.dex","sources":[{"file":"/Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/8361f51ef64e50176085885c495666b0ceaca41a425690f59725ad034931c8cc_0.jar"}],"tool":"D8"} com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes. Type com.google.gson.annotations.Expose is defined multiple times: /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/8361f51ef64e50176085885c495666b0ceaca41a425690f59725ad034931c8cc_0.jar:classes.dex, /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/a3af66a5125eeca3f668f48c73e59b1d680df1653b5306fceb4fafd8f0f51799_0.jar:classes.dex at com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow(D8DexArchiveMerger.java:151) at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:138) at com.android.build.gradle.internal.tasks.DexMergingWorkAction.merge(DexMergingTask.kt:859) at com.android.build.gradle.internal.tasks.DexMergingWorkAction.run(DexMergingTask.kt:805) at com.android.build.gradle.internal.profile.ProfileAwareWorkAction.execute(ProfileAwareWorkAction.kt:74) at org.gradle.workers.internal.DefaultWorkerServer.execute(DefaultWorkerServer.java:63) at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66) at org.gradle.workers.internal.NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62) at org.gradle.internal.classloader.ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:97) at org.gradle.workers.internal.NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62) at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:44) at org.gradle.workers.internal.AbstractWorker$1.call(AbstractWorker.java:41) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73) at org.gradle.workers.internal.AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41) at org.gradle.workers.internal.NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59) at org.gradle.workers.internal.DefaultWorkerExecutor.lambda$submitWork$2(DefaultWorkerExecutor.java:205) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:187) at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:120) at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:162) at org.gradle.internal.Factories$1.create(Factories.java:31) at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:270) at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:119) at org.gradle.internal.work.DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:124) at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:157) at org.gradle.internal.work.DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:126) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/8361f51ef64e50176085885c495666b0ceaca41a425690f59725ad034931c8cc_0.jar:classes.dex at Version.fakeStackEntry(Version_3.2.74.java:0) at com.android.tools.r8.internal.ci.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:68) at com.android.tools.r8.internal.ci.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:28) at com.android.tools.r8.internal.ci.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:27) at com.android.tools.r8.internal.ci.b(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:3) at com.android.tools.r8.D8.run(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:11) at com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.java:136) ... 38 more Caused by: com.android.tools.r8.internal.a: Type com.google.gson.annotations.Expose is defined multiple times: /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/8361f51ef64e50176085885c495666b0ceaca41a425690f59725ad034931c8cc_0.jar:classes.dex, /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/a3af66a5125eeca3f668f48c73e59b1d680df1653b5306fceb4fafd8f0f51799_0.jar:classes.dex at com.android.tools.r8.internal.vQ.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:14) at com.android.tools.r8.internal.vQ.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:22) at com.android.tools.r8.internal.zK.b(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:7) at com.android.tools.r8.internal.zK.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:23) at com.android.tools.r8.internal.zK.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:10) at java.base/java.util.concurrent.ConcurrentHashMap.merge(ConcurrentHashMap.java:2048) at com.android.tools.r8.internal.zK.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:6) at com.android.tools.r8.graph.A2$a.e(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:4) at com.android.tools.r8.dex.b.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:110) at com.android.tools.r8.dex.b.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:28) at com.android.tools.r8.D8.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:26) at com.android.tools.r8.D8.d(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:593) at com.android.tools.r8.D8.b(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:1) at com.android.tools.r8.internal.ci.a(R8_3.2.74_8761c622ca9e0f3de56216afa3dc074e1654beeea6424834491619aec2c0fe43:24) ... 41 more
Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/mixed_scope_dex_archive/debug/out/8361f51ef64e50176085885c495666b0ceaca41a425690f59725ad034931c8cc_0.jar:classes.dex
com.google.gson.annotations.Expose 重复了,你排查下
但我去掉插件运行就不会报这个合并资源的错误
感觉应该是这个Aspect插件不会跟原生的gradle的插件一样会自动合并相同的jar
这个插件就是自定义AGP提供的transform进行字节码文件处理,因为Aspectj的特性,如果发生织入是会多出class文件的。
至于合并相同的jar?你如果是指的重复依赖,那依赖那边会去处理,跟插件没关系。但如果你确实通过maven引入的依赖,又本地引入或者写了相同类,那确实会出现重复类问题,这本身就是不允许的。
如果是引入这个插件出现重复类,可以根据module/build/tmp/transformClassesWithAjxForXXX/buildConfigCache.json
文件,查找weaveOutputs相关信息,有对应的输入和输出。
应该是这个gson.jar重复了,但项目需求是要同时存在两个相同的jar的,然后也通过exclude ‘com.google'避免对gson这个lib进行代码织入,但还是会报duplicate_classes的错误.
@androidKy 你可以先升级到最新版本,仍然出错的话,就exclude掉这个的来源:
Caused by: org.aspectj.weaver.BCException: Whilst processing type 'Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1$1;' - cannot cast the outer type to a reference type. Signature=Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1; toString()=leakcanary.internal.activity.screen.HeapAnalysisFailureScreen$createView$1$1 class=HeapAnalysisFailureScreen$createView$1$1
现在已经是最新版本3.2.0了,想问下可以这样去掉去掉jar和aar包的来源的吗?exclude ".jar", ".aar",我测了一下好像不生效的,只能通过类的路径exclude
不可以用exclude jar或者aar的方式来过滤,只能通过类的路径
应该是这个gson.jar重复了,但项目需求是要同时存在两个相同的jar的,然后也通过exclude ‘com.google'避免对gson这个lib进行代码织入,但还是会报duplicate_classes的错误.
你确定不引入这个插件不会报重复吗?你这边两个目录是针对不同的flavor吗?
应该是这个gson.jar重复了,但项目需求是要同时存在两个相同的jar的,然后也通过exclude ‘com.google'避免对gson这个lib进行代码织入,但还是会报duplicate_classes的错误.
你确定不引入这个插件不会报重复吗?你这边两个目录是针对不同的flavor吗?
确定不引入这个插件不会报重复,这两个目录是针对相同的flavor
你引入插件,但是禁用试试:
aspectjx {
enabled = false
}
你引入插件,但是禁用试试:
aspectjx { enabled = false }
还是会报duplicate_classes异常,但如果没引入apply plugin: 'io.github.wurensen.android-aspectjx',运行是可以正常安装的,我刚试了一下新建了一个demo,然后也引入相同的jar在不同的目录,又可以直接安装,有点懵了,不知道项目哪里影响到了,检查了gradle环境和aspect环境又是一样的
那应该就不是织入导致的了,因为禁用后,所有输入文件会直接拷贝到输出中。你看看有没有办法创建一个可以复现的demo。
嗯,也只能这样排查了,感谢大佬的耐心解答🙏
大佬,那个资源冲突的问题解决了,因为我项目这边是用compileOnly方式引入了两个相同的jar,但实际运行的时候只会implemention其中一个,所以你没插件时是不会报错的,但引入插件后,因为没有exclude这两个jar,所以是会对两个jar进行输出就会导致冲突了
然后还有最后一个问题,就是我可以在a library对b library的类进行织入吗,我发现好像只能在对应的module写对应的Aspect类进行织入。。。
大佬,那个资源冲突的问题解决了,因为我项目这边是用compileOnly方式引入了两个相同的jar,但实际运行的时候只会implemention其中一个,所以你没插件时是不会报错的,但引入插件后,因为没有exclude这两个jar,所以是会对两个jar进行输出就会导致冲突了
compileOnly会参与编译,但是不会被当成transform的输入输出的。
然后还有最后一个问题,就是我可以在a library对b library的类进行织入吗,我发现好像只能在对应的module写对应的Aspect类进行织入。。。
然后还有最后一个问题,就是我可以在a library对b library的类进行织入吗,我发现好像只能在对应的module写对应的Aspect类进行织入。。。
- a library无法对b library进行织入(因为library在进行transform处理时,对于其它library仅仅是依赖的关系,输出的library对应的产物是不会包含其它library的类的)
- 但是app module可以收集到所有依赖的织入规则类,并进行织入处理(因为app最终会把所有实际依赖的类打包进行输出);换句话说,如果你的library中有定义织入类,是会对app module产生影响的。当然,前提都是app module也使用了该插件。
明白了,感谢大佬的解答🙏
构建环境相关信息:
编译构建报错失败,看报错信息没什么头绪,麻烦大神帮忙看看。
Execution failed for task ':app:transformClassesWithAjxForDebug'.
Try:
Exception is: org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithAjxForDebug'. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:147) at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:282) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:145) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:133) at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:77) at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46) at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51) at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57) at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56) at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52) at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:74) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:333) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:320) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:313) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:299) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:143) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:227) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:218) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:140) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) Caused by: org.gradle.internal.UncheckedException: java.util.concurrent.ExecutionException: org.gradle.api.GradleException: ABORT at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:68) at org.gradle.internal.UncheckedException.throwAsUncheckedException(UncheckedException.java:41) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:107) at org.gradle.api.internal.project.taskfactory.IncrementalTaskInputsTaskAction.doExecute(IncrementalTaskInputsTaskAction.java:47) at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:51) at org.gradle.api.internal.project.taskfactory.AbstractIncrementalTaskAction.execute(AbstractIncrementalTaskAction.java:25) at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:29) at org.gradle.api.internal.tasks.execution.TaskExecution$3.run(TaskExecution.java:242) at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:29) at org.gradle.internal.operations.DefaultBuildOperationRunner$1.execute(DefaultBuildOperationRunner.java:26) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.run(DefaultBuildOperationRunner.java:47) at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:68) at org.gradle.api.internal.tasks.execution.TaskExecution.executeAction(TaskExecution.java:227) at org.gradle.api.internal.tasks.execution.TaskExecution.executeActions(TaskExecution.java:210) at org.gradle.api.internal.tasks.execution.TaskExecution.executeWithPreviousOutputFiles(TaskExecution.java:193) at org.gradle.api.internal.tasks.execution.TaskExecution.execute(TaskExecution.java:171) at org.gradle.internal.execution.steps.ExecuteStep.executeInternal(ExecuteStep.java:89) at org.gradle.internal.execution.steps.ExecuteStep.access$000(ExecuteStep.java:40) at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:53) at org.gradle.internal.execution.steps.ExecuteStep$1.call(ExecuteStep.java:50) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73) at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:50) at org.gradle.internal.execution.steps.ExecuteStep.execute(ExecuteStep.java:40) at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:68) at org.gradle.internal.execution.steps.RemovePreviousOutputsStep.execute(RemovePreviousOutputsStep.java:38) at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:48) at org.gradle.internal.execution.steps.ResolveInputChangesStep.execute(ResolveInputChangesStep.java:36) at org.gradle.internal.execution.steps.CancelExecutionStep.execute(CancelExecutionStep.java:41) at org.gradle.internal.execution.steps.TimeoutStep.executeWithoutTimeout(TimeoutStep.java:74) at org.gradle.internal.execution.steps.TimeoutStep.execute(TimeoutStep.java:55) at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:51) at org.gradle.internal.execution.steps.CreateOutputsStep.execute(CreateOutputsStep.java:29) at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:61) at org.gradle.internal.execution.steps.CaptureStateAfterExecutionStep.execute(CaptureStateAfterExecutionStep.java:42) at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:60) at org.gradle.internal.execution.steps.BroadcastChangingOutputsStep.execute(BroadcastChangingOutputsStep.java:27) at org.gradle.internal.execution.steps.BuildCacheStep.executeWithoutCache(BuildCacheStep.java:180) at org.gradle.internal.execution.steps.BuildCacheStep.lambda$execute$1(BuildCacheStep.java:75) at org.gradle.internal.Either$Right.fold(Either.java:175) at org.gradle.internal.execution.caching.CachingState.fold(CachingState.java:59) at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:73) at org.gradle.internal.execution.steps.BuildCacheStep.execute(BuildCacheStep.java:48) at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:36) at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:25) at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:36) at org.gradle.internal.execution.steps.RecordOutputsStep.execute(RecordOutputsStep.java:22) at org.gradle.internal.execution.steps.SkipUpToDateStep.executeBecause(SkipUpToDateStep.java:110) at org.gradle.internal.execution.steps.SkipUpToDateStep.lambda$execute$2(SkipUpToDateStep.java:56) at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:56) at org.gradle.internal.execution.steps.SkipUpToDateStep.execute(SkipUpToDateStep.java:38) at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:73) at org.gradle.internal.execution.steps.ResolveChangesStep.execute(ResolveChangesStep.java:44) at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:37) at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsFinishedStep.execute(MarkSnapshottingInputsFinishedStep.java:27) at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:89) at org.gradle.internal.execution.steps.ResolveCachingStateStep.execute(ResolveCachingStateStep.java:50) at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:114) at org.gradle.internal.execution.steps.ValidateStep.execute(ValidateStep.java:57) at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:76) at org.gradle.internal.execution.steps.CaptureStateBeforeExecutionStep.execute(CaptureStateBeforeExecutionStep.java:50) at org.gradle.internal.execution.steps.SkipEmptyWorkStep.executeWithNoEmptySources(SkipEmptyWorkStep.java:249) at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:86) at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:54) at org.gradle.internal.execution.steps.RemoveUntrackedExecutionStateStep.execute(RemoveUntrackedExecutionStateStep.java:32) at org.gradle.internal.execution.steps.RemoveUntrackedExecutionStateStep.execute(RemoveUntrackedExecutionStateStep.java:21) at org.gradle.internal.execution.steps.legacy.MarkSnapshottingInputsStartedStep.execute(MarkSnapshottingInputsStartedStep.java:38) at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:43) at org.gradle.internal.execution.steps.LoadPreviousExecutionStateStep.execute(LoadPreviousExecutionStateStep.java:31) at org.gradle.internal.execution.steps.AssignWorkspaceStep.lambda$execute$0(AssignWorkspaceStep.java:40) at org.gradle.api.internal.tasks.execution.TaskExecution$4.withWorkspace(TaskExecution.java:287) at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:40) at org.gradle.internal.execution.steps.AssignWorkspaceStep.execute(AssignWorkspaceStep.java:30) at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:37) at org.gradle.internal.execution.steps.IdentityCacheStep.execute(IdentityCacheStep.java:27) at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:44) at org.gradle.internal.execution.steps.IdentifyStep.execute(IdentifyStep.java:33) at org.gradle.internal.execution.impl.DefaultExecutionEngine$1.execute(DefaultExecutionEngine.java:76) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:144) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:133) at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:77) at org.gradle.api.internal.tasks.execution.FinalizePropertiesTaskExecuter.execute(FinalizePropertiesTaskExecuter.java:46) at org.gradle.api.internal.tasks.execution.ResolveTaskExecutionModeExecuter.execute(ResolveTaskExecutionModeExecuter.java:51) at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:57) at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:56) at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:36) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.executeTask(EventFiringTaskExecuter.java:77) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:55) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.call(EventFiringTaskExecuter.java:52) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) at org.gradle.internal.operations.DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) at org.gradle.internal.operations.DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) at org.gradle.internal.operations.DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) at org.gradle.internal.operations.DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73) at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:52) at org.gradle.execution.plan.LocalTaskNodeExecutor.execute(LocalTaskNodeExecutor.java:74) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:333) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:320) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:313) at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:299) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:143) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:227) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:218) at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:140) at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48) Caused by: java.util.concurrent.ExecutionException: org.gradle.api.GradleException: ABORT at com.hujiang.gradle.plugin.android.aspectjx.internal.concurrent.BatchTaskScheduler.execute(BatchTaskScheduler.kt:40) at com.hujiang.gradle.plugin.android.aspectjx.internal.AJXTaskManager.batchExecute(AJXTaskManager.kt:54) at com.hujiang.gradle.plugin.android.aspectjx.internal.procedure.DoAspectWorkProcedure.doWorkContinuously(DoAspectWorkProcedure.kt:100) at com.hujiang.gradle.plugin.android.aspectjx.internal.procedure.AJXProcedure.doWorkContinuously(AJXProcedure.kt:42) at com.hujiang.gradle.plugin.android.aspectjx.AJXTransform.transform(AJXTransform.kt:90) at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:281) at com.android.build.gradle.internal.profile.NoOpAnalyticsService.recordBlock(NoOpAnalyticsService.kt:72) at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:239) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:104) ... 116 more Caused by: org.gradle.api.GradleException: ABORT at com.hujiang.gradle.plugin.android.aspectjx.internal.AJXTask.call(AJXTask.kt:105) Caused by: org.aspectj.weaver.BCException: Whilst processing type 'Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1$1;' - cannot cast the outer type to a reference type. Signature=Lleakcanary/internal/activity/screen/HeapAnalysisFailureScreen$createView$1$1; toString()=leakcanary.internal.activity.screen.HeapAnalysisFailureScreen$createView$1$1 class=HeapAnalysisFailureScreen$createView$1$1 when processing type mungers when weaving when batch building with classpath: /Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/ajx/debug/includeFiles:/Users/quinx/Desktop/workspace_topon/project/up_sdk_android/anythink_china_project/app/build/intermediates/ajx/debug/excludeFiles:/Users/quinx/.gradle/caches/transforms-3/462f41fddcbf5796376a61b14ac84a0b/transformed/MobDNA_SDK_Android_v0.9.8-runtime.jar
at org.aspectj.weaver.AbstractReferenceTypeDelegate.getFormalTypeParametersFromOuterClass(AbstractReferenceTypeDelegate.java:115) at org.aspectj.weaver.bcel.BcelObjectType.ensureGenericSignatureUnpacked(BcelObjectType.java:775) at org.aspectj.weaver.bcel.BcelObjectType.getSuperclass(BcelObjectType.java:231) at org.aspectj.weaver.ReferenceType.getSuperclass(ReferenceType.java:993) at org.aspectj.weaver.bcel.BcelWeaver.weaveParentsFor(BcelWeaver.java:1312) at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1125) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:514) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.afterCompiling(AjPipeliningCompilerAdapter.java:375) at org.aspectj.ajdt.internal.compiler.CompilerAdapter.ajc$afterReturning$org_aspectj_ajdt_internal_compiler_CompilerAdapter$2$f9cc9ca0(CompilerAdapter.java:69) at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:428) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:1107) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:276) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:189) at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:114) at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60) at org.aspectj.tools.ajc.Main.run(Main.java:371) at com.hujiang.gradle.plugin.android.aspectjx.internal.AJXTask.call(AJXTask.kt:101)