IntelliJ Platform Plugin SDK Help

DataGrip Plugin Development

DataGrip is an IntelliJ Platform-based product. Plugin projects targeting DataGrip can be developed using IntelliJ IDEA with the Gradle IntelliJ Plugin.

Configuring Plugin Projects Targeting DataGrip

The configuration of DataGrip plugin projects follows the methods described in Configuring Plugin Projects using the IntelliJ IDEA Product Attribute, and Configuring the plugin.xml File.

The table below summarizes the Gradle IntelliJ Plugin attributes to set in the plugin project's Gradle build script. Click on an entry in the table's Attribute column to go to the documentation about that attribute. To see how these attributes appear in a similar Gradle build script for PhpStorm, see Configuring Gradle Build Script Using the IntelliJ IDEA Product Attribute.

gradle-intellij-plugin Attribute

Attribute Value

intellij.type

IU for IntelliJ IDEA Ultimate.
(IC is incompatible with the required DatabaseTools plugin.)

intellij.version

2019.3 Set to the same version as the DataGrip target version, as set by runIde.ideDir.

intellij.plugins

DatabaseTools Dependency on the bundled DatabaseTools plugin.

runIde.ideDir

Path to locally installed target version of DataGrip. For example, for macOS:
/Users/$USERNAME$/Library/Application Support/JetBrains/Toolbox/apps/datagrip/ch-0/193.5233.139/DataGrip.app/Contents.

The dependency on the DataGrip APIs must be declared in the plugin.xml file. As described in Modules Specific to Functionality table, the <depends> tags must declare com.intellij.database. Note that DataGrip plugins must also declare a dependency on com.intellij.modules.platform because com.intellij.database is not recognized as a module. Consequently, without the com.intellij.modules.platform declaration the plugin is assumed to be a legacy plugin and will not load in DataGrip.

Available DataGrip APIs

Use the Exploring APIs as a Consumer process to identify the libraries in DatabaseTools. Test your plugin with any version of DataGrip you wish to support.

Last modified: 14 September 2022