bytedance / ByteX

ByteX is a bytecode plugin platform based on Android Gradle Transform API and ASM. 字节码插件开发平台

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

java.lang.UnsupportedOperationException: NestHost requires ASM7

Primer1889 opened this issue · comments

java.lang.UnsupportedOperationException: NestHost requires ASM7
at org.objectweb.asm.ClassVisitor.visitNestHost(ClassVisitor.java:174)
at org.objectweb.asm.tree.ClassNode.accept(ClassNode.java:399)
at com.ss.android.ugc.bytex.common.visitor.ClassVisitorChain.accept(ClassVisitorChain.java:65)
at com.ss.android.ugc.bytex.common.processor.ClassFileAnalyzer.handle(ClassFileAnalyzer.java:102)
at com.ss.android.ugc.bytex.transformer.processor.ClassFileProcessor.process(ClassFileProcessor.java:27)
at com.ss.android.ugc.bytex.transformer.processor.ProcessorChain.proceed(ProcessorChain.java:30)
at com.ss.android.ugc.bytex.transformer.processor.FilterFileProcessor.process(FilterFileProcessor.java:23)
at com.ss.android.ugc.bytex.transformer.processor.ProcessorChain.proceed(ProcessorChain.java:30)
at com.ss.android.ugc.bytex.transformer.processor.task.TraverseTask.compute(TraverseTask.java:31)
at java.base/java.util.concurrent.RecursiveAction.exec(RecursiveAction.java:189)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Task :app:transformClassesWithShrinkRFileForCommonRelease FAILED
java.lang.IllegalStateException: The configuration :app:commonReleaseRuntimeClasspath was resolved from a thread not managed by Gradle.

可我本地已经使用 ASM9.4

implementation 'org.ow2.asm:asm:9.4'
implementation 'org.ow2.asm:asm-commons:9.4'
classpath 'com.android.tools.build:gradle:4.1.2'
distributionUrl=https://services.gradle.org/distributions/gradle-7.2-all.zip

你可以通过 byteX的配置 来支持, 通过修改根工程目录的 gradle.properties ,增加以下配置。
bytex.ASM_API=ASM7