Extension class is a Kotlin object
Reports extensions which are instantiated by the IntelliJ Platform, but are declared as Kotlin objects.
Extensions lifecycle is managed by the IntelliJ Platform. Using Kotlin objects for extension registration may cause creation of unnecessary extension instances and make plugin unloading impossible.
Extension registration:
<annotator language="myLang" implementationClass="com.example.MyAnnotator"/>
Extension implementation:
// bad:
object MyAnnotator : Annotator {
...
}
// good:
class MyAnnotator : Annotator {
...
}
New in 2023.1
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Plugin DevKit, 241.16690 |
Last modified: 29 April 2024