IDEA Plugin Dev - Dependency

About

dependency Management on classes from other plugins, either bundled, third-party or your own.

See also: IDEA Plugin Dev - Order Entry (SDK, Library, Module dependencies)

Steps

  • Add the jars of the plugin you’re depending on to the classpath of your IntelliJ Platform SDK.

Do not add the plugin jars as a library: this will fail at runtime because IntelliJ Platform will load two separate copies of the dependency plugin classes.

  • Add a <depends> tag to your plugin.xml, adding the ID of the plugin you’re depending on as the contents of the tag. For example: <depends>org.jetbrains.idea.maven</depends>

Module Dependency

module dependency. A module dependency is a <depends> tag where the contents of the tag starts with com.intellij.modules

Modules available in all products based on IntelliJ Platform:

  • com.intellij.modules.platform
  • com.intellij.modules.lang
  • com.intellij.modules.vcs
  • com.intellij.modules.xml
  • com.intellij.modules.xdebugger

Modules available only in specific products:

Module Product
com.intellij.modules.java IntelliJ IDEA
com.intellij.modules.ultimate IntelliJ IDEA Ultimate Edition
com.intellij.modules.androidstudio Android Studio
com.intellij.modules.appcode AppCode
com.intellij.modules.cidr.lang AppCode, CLion
com.intellij.modules.cidr.debugger AppCode, CLion, RubyMotion
com.intellij.modules.clion CLion
com.intellij.modules.database IntelliJ IDEA Ultimate Edition, PhpStorm, RubyMine, PyCharm, DataGrip
com.intellij.modules.python PyCharm
com.intellij.modules.ruby RubyMine

Documentation / Reference


Powered by ComboStrap