sy007 / DebouncePlugin

Android点击事件防抖动插件

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gradle 7.2.2 AGP7.3.3 无法正常运行

lianyagang opened this issue · comments

Caused by: java.lang.ClassCastException
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41)
at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132)
at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26)
at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73)
at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72)
at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32)
Caused by: java.lang.ClassCastException

commented

@lianyagang 请问项目用的kotlin plugin是多少,用JDK哪个版本编译的。 使用插件1.0.2版本报错吗?

@lianyagang 请问项目用的kotlin plugin是多少,用JDK哪个版本编译的。 使用插件1.0.2版本报错吗?

jdk11。 kotlin plugin 1.7.10
你的插件版本不是1.1.0吗?1.0.2是啥?

commented

@lianyagang 好的,想让你这边试下1.0.2版本的插件,看报错嘛?用于问题定位哈。

@lianyagang 好的,想让你这边试下1.0.2版本的插件,看报错嘛?用于问题定位哈。

class java.lang.String cannot be cast to class org.objectweb.asm.Type (java.lang.String is in module java.base of loader 'bootstrap'; org.objectweb.asm.Type is in unnamed module of loader org.gradle.internal.classloader.VisitableURLClassLoader @68b6003e)
class java.lang.String cannot be cast to class org.objectweb.asm.Type (java.lang.String is in module java.base of loader 'bootstrap'; org.objectweb.asm.Type is in unnamed module of loader org.gradle.internal.classloader.VisitableURLClassLoader @68b6003e)

Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)

Re-download dependencies and sync project (requires network)
The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.

Stop Gradle build processes (requires restart)
Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.

In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

Execution optimizations have been disabled for task ':app:transformClassesWithDebounceTransformForDevDebug' to ensure correctness due to the following reasons:

@lianyagang 好的,想让你这边试下1.0.2版本的插件,看报错嘛?用于问题定位哈。

class java.lang.String cannot be cast to class org.objectweb.asm.Type (java.lang.String is in module java.base of loader 'bootstrap'; org.objectweb.asm.Type is in unnamed module of loader org.gradle.internal.classloader.VisitableURLClassLoader @68b6003e) class java.lang.String cannot be cast to class org.objectweb.asm.Type (java.lang.String is in module java.base of loader 'bootstrap'; org.objectweb.asm.Type is in unnamed module of loader org.gradle.internal.classloader.VisitableURLClassLoader @68b6003e)

Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)

Re-download dependencies and sync project (requires network) The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.

Stop Gradle build processes (requires restart) Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.

In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.

Execution optimizations have been disabled for task ':app:transformClassesWithDebounceTransformForDevDebug' to ensure correctness due to the following reasons:

这个是1.0.2提示的错误

commented

@lianyagang 我看Demo中用的AGP是7.2.2,gradle是7.3.3,kotlin-plugin:1.7.10,防抖插件版本是1.1.0。你那边用demo时会出现错误吗?

commented

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

兄弟。你角标越界也判断下咯?这改的有点仓促啊。你怎么确定他长度一定是2?

commented

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

兄弟。你角标越界也判断下咯?这改的有点仓促啊。你怎么确定他长度一定是2?

因为是jvm dynamic指令调用,一定是2奥。

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

兄弟。你角标越界也判断下咯?这改的有点仓促啊。你怎么确定他长度一定是2?

因为是jvm dynamic指令调用,一定是2奥。

可是我角标越界了。jdk11

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

兄弟。你角标越界也判断下咯?这改的有点仓促啊。你怎么确定他长度一定是2?

因为是jvm dynamic指令调用,一定是2奥。

可是我角标越界了。jdk11

长度只有1.你在调用bsmArgs[1]的时候,控制台提示角标越界了

commented

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

兄弟。你角标越界也判断下咯?这改的有点仓促啊。你怎么确定他长度一定是2?

因为是jvm dynamic指令调用,一定是2奥。

可是我角标越界了。jdk11

能debug下嘛,看下是哪个场景出现的问题。

在app/build.gradle下依赖下插件源码,debug下assembleRelease task

Execution failed for task ':app:transformClassesWithDebounceTransformForDevDebug'.

java.lang.ArrayIndexOutOfBoundsException

  • Try:

Run with --info or --debug option to get more log output.
Run with --scan to get full insights.

  • Exception is:
    org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithDebounceTransformForDevDebug'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:145)
    at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:282)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeIfValid(ExecuteActionsTaskExecuter.java:143)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:131)
    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:402)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:389)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:382)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:368)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:61)
    Caused by: java.lang.RuntimeException: java.lang.ArrayIndexOutOfBoundsException
    at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:71)
    at com.android.build.gradle.internal.profile.AnalyticsResourceManager.recordBlockAtExecution(AnalyticsResourceManager.kt:226)
    at com.android.build.gradle.internal.profile.AnalyticsService.recordBlock(AnalyticsService.kt:160)
    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)
    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$2.run(TaskExecution.java:239)
    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:224)
    at org.gradle.api.internal.tasks.execution.TaskExecution.executeActions(TaskExecution.java:207)
    at org.gradle.api.internal.tasks.execution.TaskExecution.executeWithPreviousOutputFiles(TaskExecution.java:190)
    at org.gradle.api.internal.tasks.execution.TaskExecution.execute(TaskExecution.java:168)
    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:188)
    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:38)
    at org.gradle.internal.execution.steps.StoreExecutionStateStep.execute(StoreExecutionStateStep.java:27)
    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:109)
    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.lambda$execute$2(SkipEmptyWorkStep.java:93)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:93)
    at org.gradle.internal.execution.steps.SkipEmptyWorkStep.execute(SkipEmptyWorkStep.java:34)
    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$3.withWorkspace(TaskExecution.java:284)
    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:142)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:131)
    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:402)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$InvokeNodeExecutorsAction.execute(DefaultTaskExecutionGraph.java:389)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:382)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction.execute(DefaultTaskExecutionGraph.java:368)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.lambda$run$0(DefaultPlanExecutor.java:127)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.execute(DefaultPlanExecutor.java:191)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.executeNextNode(DefaultPlanExecutor.java:182)
    at org.gradle.execution.plan.DefaultPlanExecutor$ExecutorWorker.run(DefaultPlanExecutor.java:124)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:61)
    Caused by: java.lang.ArrayIndexOutOfBoundsException
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41)
    at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:137)
    at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26)
    at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73)
    at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72)
    at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32)
    Caused by: java.lang.ArrayIndexOutOfBoundsException
commented
  1. image
  2. image
  3. image
  4. image
  5. image

@lianyagang 帮忙Debug定位下,谢谢。

commented

Caused by: java.lang.ClassCastException at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at com.sunyuan.click.debounce.utils.TransformKt.transform(Transform.kt:41) at com.sunyuan.click.debounce.DebounceTransform.transformDirInput(DebounceTransform.kt:132) at com.sunyuan.click.debounce.DebounceTransform.access$transformDirInput(DebounceTransform.kt:26) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:73) at com.sunyuan.click.debounce.DebounceTransform$transform$1$2$1.invoke(DebounceTransform.kt:72) at com.sunyuan.click.debounce.utils.Worker.submit$lambda-1(Worker.kt:32) Caused by: java.lang.ClassCastException

@lianyagang 你好,这个问题已修复,请升级1.1.1版本试试。

兄弟。你角标越界也判断下咯?这改的有点仓促啊。你怎么确定他长度一定是2?

因为是jvm dynamic指令调用,一定是2奥。

可是我角标越界了。jdk11

能debug下嘛,看下是哪个场景出现的问题。

在app/build.gradle下依赖下插件源码,debug下assembleRelease task

@lianyagang 你好,问题已经解决

我这边往暂存库里推了一个版本(1.1.3),你那边验证没问题就发布哈。

buildscript {
    ...
    repositories {
        //暂存库maven地址
        maven { url "https://s01.oss.sonatype.org/service/local/staging/deploy/maven2" }
    }
    dependencies {
        classpath 'io.github.sy007:debounce-plugin:1.1.3'
    }
}

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized
是不是没有权限?

  1. image
  2. image
  3. image
  4. image
  5. image

@lianyagang 帮忙Debug定位下,谢谢。

根据截图的debug方式。无法正常运行。会提示Disconnected from the target VM, address: '127.0.0.1:57429', transport: 'socket'

commented

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized 是不是没有权限?

换成这个maven地址: maven { url "https://s01.oss.sonatype.org/content/groups/staging/" }

io.github.sy007:debounce-plugin:1.1.3

牛逼。竟然可以了。所以改了啥

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized 是不是没有权限?

换成这个maven地址: maven { url "https://s01.oss.sonatype.org/content/groups/staging/" }

出个ASM系列教程吧。我学习一波

commented

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized 是不是没有权限?

换成这个maven地址: maven { url "https://s01.oss.sonatype.org/content/groups/staging/" }

出个ASM系列教程吧。我学习一波

老哥,这个版本可以了吗?害,教程网上都有的。

我觉得是分三部分学习:

  1. gradle transform
  2. jvm字节码(看懂就行)
  3. ASM api

相信以老哥的能力信手拈来。

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized 是不是没有权限?

换成这个maven地址: maven { url "https://s01.oss.sonatype.org/content/groups/staging/" }

出个ASM系列教程吧。我学习一波

老哥,这个版本可以了吗?害,教程网上都有的。

我觉得是分三部分学习:

  1. gradle transform
  2. jvm字节码(看懂就行)
  3. ASM api

相信以老哥的能力信手拈来。

1.1.3.正常运行了

commented

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized 是不是没有权限?

换成这个maven地址: maven { url "https://s01.oss.sonatype.org/content/groups/staging/" }

出个ASM系列教程吧。我学习一波

老哥,这个版本可以了吗?害,教程网上都有的。

我觉得是分三部分学习:

  1. gradle transform
  2. jvm字节码(看懂就行)
  3. ASM api

相信以老哥的能力信手拈来。

1.1.3.正常运行了

👍

commented

Could not GET 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/io/github/sy007/debounce-plugin/1.1.3/debounce-plugin-1.1.3.pom'. Received status code 401 from server: Unauthorized 是不是没有权限?

换成这个maven地址: maven { url "https://s01.oss.sonatype.org/content/groups/staging/" }

出个ASM系列教程吧。我学习一波

老哥,这个版本可以了吗?害,教程网上都有的。

我觉得是分三部分学习:

  1. gradle transform
  2. jvm字节码(看懂就行)
  3. ASM api

相信以老哥的能力信手拈来。

1.1.3.正常运行了

👍

明天推代码

推代码拉~~兄弟

commented

推代码拉~~兄弟

代码已推送,1.1.3版本也正式发布了