Mismatch between light service level and its constructor
Reports mismatches between light service levels and its constructors.
The following problems are reported:
A light service class has a constructor with two parameters of types
com.intellij.openapi.project.Project
andkotlinx.coroutines.CoroutineScope
, or one parameter of typeProject
is not annotated as a project-level service.A light service class annotated as an application-level service does not have a no-arg constructor, nor a constructor with one parameter of type
CoroutineScope
.
Example (Kotlin):
@Service // Suggest specifying 'Service.Level.PROJECT' parameter in '@Service' annotation
class MyService(val project: Project) // Suggest removing the parameter from constructor 'MyService'
After applying the quick-fix that suggests specifying 'Service.Level.PROJECT' parameter in '@Service' annotation is applied:
@Service(Service.Level.PROJECT)
class MyService(val project: Project)
After applying the quick-fix that suggests removing the parameter from constructor 'MyService':
@Service
class MyService()
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
MismatchedLightServiceLevelAndCtor
New in 2023.2
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Plugin DevKit, 243.23126 |
Thanks for your feedback!