wurensen / gradle_plugin_android_aspectjx

A Android gradle plugin that effects AspectJ on Android project and can hook methods in Kotlin, aar and jar file.
Apache License 2.0
363 stars 50 forks source link

编译报错Cannot read debug info for @Aspect to handle formal binding in pointcuts #15

Closed linyilei closed 2 years ago

linyilei commented 2 years ago

编译报错如下 FAILURE: Build failed with an exception.

java.util.concurrent.ExecutionException: org.gradle.api.GradleException: Cannot read debug info for @Aspect to handle formal binding in pointcuts (please compile with 'javac -g' or '<javac debug='true'.../>' in Ant)

配置如下 aspectjx{

exclude  'com.google', 'com.squareup', 'com.alipay', 'com.taobao', 'org.apache',
        'org.jetbrains.kotlin','com.alibaba','com.github','com.tencent',
        "module-info", 'versions.9','org.eclipse','com.alibaba','kotlin'

}

wurensen commented 2 years ago

@linyilei 提供下错误日志,在appmodule/build/outputs/logs/ajc文件就是。

linyilei commented 2 years ago

@linyilei 提供下错误日志,在appmodule/build/outputs/logs/ajc文件就是。 这个路径下没有发现错误日志文件 @wurensen

wurensen commented 2 years ago

@linyilei 发生出错又没有日志,那就不是aop织入错误,你贴下构建失败完整错误日志。还有AGP版本是多少?

linyilei commented 2 years ago

那就不是aop织入错误,你贴下构建失败完整错误日志。还有AGP版本是多少?

@wurensen 之前的问题是因为aar里也依赖了aspect插件,重新打包aar已解决,现在出现了一个新的问题 ---- Exception Information --- java.lang.IllegalStateException: Expecting .,<, or ;, but found ReflectiveFallbackViewCreator while unpacking Lkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function0<Lio/github/inflationx/viewpump/internal/-ReflectiveFallbackViewCreator;>; at org.aspectj.util.GenericSignatureParser.parseClassTypeSignature(GenericSignatureParser.java:204) at org.aspectj.util.GenericSignatureParser.parseFieldTypeSignature(GenericSignatureParser.java:155) at org.aspectj.util.GenericSignatureParser.parseTypeArgument(GenericSignatureParser.java:267) at org.aspectj.util.GenericSignatureParser.maybeParseTypeArguments(GenericSignatureParser.java:275) at org.aspectj.util.GenericSignatureParser.parseClassTypeSignature(GenericSignatureParser.java:196) at org.aspectj.util.GenericSignatureParser.parseAsClassSignature(GenericSignatureParser.java:59) at org.aspectj.weaver.AbstractReferenceTypeDelegate.getGenericClassTypeSignature(AbstractReferenceTypeDelegate.java:100) at org.aspectj.weaver.bcel.BcelObjectType.ensureGenericSignatureUnpacked(BcelObjectType.java:769) 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 sun.reflect.GeneratedMethodAccessor352.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSite.invoke(PojoMetaMethodSite.java:188) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:135) at com.hujiang.gradle.plugin.android.aspectjx.internal.AJXTask.call(AJXTask.groovy:106) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)

规则是exclude 'com.google', 'com.squareup', 'com.alipay', 'com.taobao', 'org.apache', 'org.jetbrains.kotlin','com.alibaba','com.github','com.tencent', "module-info", 'versions.9','org.eclipse','com.alibaba','kotlin','kotlin.jvm'

wurensen commented 2 years ago

那就不是aop织入错误,你贴下构建失败完整错误日志。还有AGP版本是多少?

@wurensen 之前的问题是因为aar里也依赖了aspect插件,重新打包aar已解决,现在出现了一个新的问题 ---- Exception Information --- java.lang.IllegalStateException: Expecting .,<, or ;, but found ReflectiveFallbackViewCreator while unpacking Lkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function0<Lio/github/inflationx/viewpump/internal/-ReflectiveFallbackViewCreator;>; at org.aspectj.util.GenericSignatureParser.parseClassTypeSignature(GenericSignatureParser.java:204) at org.aspectj.util.GenericSignatureParser.parseFieldTypeSignature(GenericSignatureParser.java:155) at org.aspectj.util.GenericSignatureParser.parseTypeArgument(GenericSignatureParser.java:267) at org.aspectj.util.GenericSignatureParser.maybeParseTypeArguments(GenericSignatureParser.java:275) at org.aspectj.util.GenericSignatureParser.parseClassTypeSignature(GenericSignatureParser.java:196) at org.aspectj.util.GenericSignatureParser.parseAsClassSignature(GenericSignatureParser.java:59) at org.aspectj.weaver.AbstractReferenceTypeDelegate.getGenericClassTypeSignature(AbstractReferenceTypeDelegate.java:100) at org.aspectj.weaver.bcel.BcelObjectType.ensureGenericSignatureUnpacked(BcelObjectType.java:769) 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 sun.reflect.GeneratedMethodAccessor352.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSite.invoke(PojoMetaMethodSite.java:188) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:135) at com.hujiang.gradle.plugin.android.aspectjx.internal.AJXTask.call(AJXTask.groovy:106) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)

规则是exclude 'com.google', 'com.squareup', 'com.alipay', 'com.taobao', 'org.apache', 'org.jetbrains.kotlin','com.alibaba','com.github','com.tencent', "module-info", 'versions.9','org.eclipse','com.alibaba','kotlin','kotlin.jvm'

添加以下规则再试试:

    // 移除kotlin相关,编译错误和提升速度
    exclude 'kotlin.jvm', 'kotlin.internal'
    exclude 'kotlinx.coroutines.internal', 'kotlinx.coroutines.android'
linyilei commented 2 years ago

那就不是aop织入错误,你贴下构建失败完整错误日志。还有AGP版本是多少?

@wurensen 之前的问题是因为aar里也依赖了aspect插件,重新打包aar已解决,现在出现了一个新的问题 ---- Exception Information --- java.lang.IllegalStateException: Expecting .,<, or ;, but found ReflectiveFallbackViewCreator while unpacking Lkotlin/jvm/internal/Lambda;Lkotlin/jvm/functions/Function0<Lio/github/inflationx/viewpump/internal/-ReflectiveFallbackViewCreator;>; at org.aspectj.util.GenericSignatureParser.parseClassTypeSignature(GenericSignatureParser.java:204) at org.aspectj.util.GenericSignatureParser.parseFieldTypeSignature(GenericSignatureParser.java:155) at org.aspectj.util.GenericSignatureParser.parseTypeArgument(GenericSignatureParser.java:267) at org.aspectj.util.GenericSignatureParser.maybeParseTypeArguments(GenericSignatureParser.java:275) at org.aspectj.util.GenericSignatureParser.parseClassTypeSignature(GenericSignatureParser.java:196) at org.aspectj.util.GenericSignatureParser.parseAsClassSignature(GenericSignatureParser.java:59) at org.aspectj.weaver.AbstractReferenceTypeDelegate.getGenericClassTypeSignature(AbstractReferenceTypeDelegate.java:100) at org.aspectj.weaver.bcel.BcelObjectType.ensureGenericSignatureUnpacked(BcelObjectType.java:769) 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 sun.reflect.GeneratedMethodAccessor352.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.codehaus.groovy.runtime.callsite.PlainObjectMetaMethodSite.doInvoke(PlainObjectMetaMethodSite.java:43) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodSite.invoke(PojoMetaMethodSite.java:188) at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:53) at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:135) at com.hujiang.gradle.plugin.android.aspectjx.internal.AJXTask.call(AJXTask.groovy:106) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 规则是exclude 'com.google', 'com.squareup', 'com.alipay', 'com.taobao', 'org.apache', 'org.jetbrains.kotlin','com.alibaba','com.github','com.tencent', "module-info", 'versions.9','org.eclipse','com.alibaba','kotlin','kotlin.jvm'

添加以下规则再试试:

    // 移除kotlin相关,编译错误和提升速度
    exclude 'kotlin.jvm', 'kotlin.internal'
    exclude 'kotlinx.coroutines.internal', 'kotlinx.coroutines.android'

刚试了还是一样的错,除非我指定include自己app包名,并且不添加exclude,才能编译通过并且生效@wurensen

wurensen commented 2 years ago

@linyilei ReflectiveFallbackViewCreator看下这个是哪个依赖库引进来的,添加到exclude中。