permissions-dispatcher / PermissionsDispatcher

A declarative API to handle Android runtime permissions.
https://github.com/permissions-dispatcher/PermissionsDispatcher
Apache License 2.0
11.22k stars 1.44k forks source link

kotlin 1.8 Modifiers [PRIVATE] are not allowed on Kotlin parameters. Allowed modifiers: [VARARG, NOINLINE, CROSSINLINE] #779

Open akingyin1987 opened 1 year ago

akingyin1987 commented 1 year ago

version:4.9.2 Caused by: java.lang.IllegalArgumentException: Modifiers [PRIVATE] are not allowed on Kotlin parameters. Allowed modifiers: [VARARG, NOINLINE, CROSSINLINE] at com.squareup.kotlinpoet.ParameterSpec.(ParameterSpec.kt:41) at com.squareup.kotlinpoet.ParameterSpec.(ParameterSpec.kt:29) at com.squareup.kotlinpoet.ParameterSpec$Builder.build(ParameterSpec.kt:157) at com.squareup.kotlinpoet.FunSpec$Builder.addParameter(FunSpec.kt:465) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createPermissionRequestClass(KotlinBaseProcessorUnit.kt:452) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createPermissionRequestClasses(KotlinBaseProcessorUnit.kt:415) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createFile(KotlinBaseProcessorUnit.kt:43) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createFile(KotlinBaseProcessorUnit.kt:17) at permissions.dispatcher.processor.PermissionsProcessor.processKotlin(PermissionsProcessor.kt:68) at permissions.dispatcher.processor.PermissionsProcessor.process(PermissionsProcessor.kt:58) at org.jetbrains.kotlin.kapt3.base.incremental.IncrementalProcessor.process(incrementalProcessors.kt:90) at org.jetbrains.kotlin.kapt3.base.ProcessorWrapper.process(annotationProcessing.kt:197) at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:980) ... 44 more

akingyin1987 commented 1 year ago

if google dagger2 version is 2.4.5

kassim commented 1 year ago

I'm receiving this error as well

seems to be the same issue as https://github.com/permissions-dispatcher/PermissionsDispatcher/issues/775

minwonki commented 1 year ago

I too have the same problem. kotlin version : 1.8.10 permissionsdispatcher version : 4.9.2

Caused by: java.lang.IllegalArgumentException: Modifiers [PRIVATE] are not allowed on Kotlin parameters. Allowed modifiers: [VARARG, NOINLINE, CROSSINLINE] at com.squareup.kotlinpoet.ParameterSpec.(ParameterSpec.kt:41) at com.squareup.kotlinpoet.ParameterSpec.(ParameterSpec.kt:29) at com.squareup.kotlinpoet.ParameterSpec$Builder.build(ParameterSpec.kt:157) at com.squareup.kotlinpoet.FunSpec$Builder.addParameter(FunSpec.kt:465) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createPermissionRequestClass(KotlinBaseProcessorUnit.kt:452) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createPermissionRequestClasses(KotlinBaseProcessorUnit.kt:415) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createFile(KotlinBaseProcessorUnit.kt:43) at permissions.dispatcher.processor.impl.kotlin.KotlinBaseProcessorUnit.createFile(KotlinBaseProcessorUnit.kt:17) at permissions.dispatcher.processor.PermissionsProcessor.processKotlin(PermissionsProcessor.kt:68) at permissions.dispatcher.processor.PermissionsProcessor.process(PermissionsProcessor.kt:58) at org.jetbrains.kotlin.kapt3.base.incremental.IncrementalProcessor.process(incrementalProcessors.kt:90) at org.jetbrains.kotlin.kapt3.base.ProcessorWrapper.process(annotationProcessing.kt:197) at jdk.compiler/com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:985) ... 44 more

kassim commented 1 year ago

I believe I used this workaround https://github.com/permissions-dispatcher/PermissionsDispatcher/issues/775#issuecomment-1324573825 (use com.github.permissions-dispatcher:permissionsdispatcher-ktx instead of the normal annotation version)

shaomaicheng commented 10 months ago

I find reason for this issus,and i create a pr for this: https://github.com/permissions-dispatcher/PermissionsDispatcher/pull/782