diff --git a/topics/basics/plugin_structure/plugin_dependencies.md b/topics/basics/plugin_structure/plugin_dependencies.md index 65f3e171b..8a8a1c737 100644 --- a/topics/basics/plugin_structure/plugin_dependencies.md +++ b/topics/basics/plugin_structure/plugin_dependencies.md @@ -29,8 +29,8 @@ To express a dependency on classes from other plugins or modules, perform the fo > If `java.lang.NoClassDefFoundError` occurs at runtime, most likely Step 3 was omitted. > -> Otherwise, loading the plugin dependency may have failed, please check log files from -> the [Development Instance](ide_development_instance.md#development-instance-settings-caches-logs-and-plugins)). +> Otherwise, loading the plugin dependency may have failed, check log files from +> the [Development Instance](ide_development_instance.md#development-instance-settings-caches-logs-and-plugins). > {title="Getting java.lang.NoClassDefFoundError"} @@ -71,7 +71,8 @@ Use [`listBundledPlugins`](tools_gradle_intellij_plugin.md#tasks-listbundledplug -Locate the plugin's main JAR file containing META-INF/plugin.xml descriptor with [``](plugin_configuration_file.md#idea-plugin__id) tag (use [``](plugin_configuration_file.md#idea-plugin__name) if `` is not specified). +Locate the plugin's main JAR file containing the META-INF/plugin.xml descriptor with the [``](plugin_configuration_file.md#idea-plugin__id) tag +(use [``](plugin_configuration_file.md#idea-plugin__name) if `` is not specified). Bundled plugins are located in \$PRODUCT_ROOT\$/plugins/\$PLUGIN_NAME\$/lib/\$PLUGIN_NAME\$.jar. @@ -106,7 +107,7 @@ See also [](plugin_compatibility.md#modules-specific-to-functionality). ### Preparing Sandbox -If the plugin is not bundled with the target IDE, run the (sandbox) [IDE Development Instance](ide_development_instance.md) of your target IDE and install the plugin there. +If the plugin is not bundled with the target IDE, run the (sandbox) [](ide_development_instance.md) of your target IDE and install the plugin there. ## 2. Project Setup {#project-setup} @@ -140,7 +141,7 @@ See [](tools_intellij_platform_gradle_plugin_dependencies_extension.md#plugins) -> Please see the [`intellij.plugins`](tools_gradle_intellij_plugin.md#intellij-extension-plugins) property for acceptable values. +> See the [`intellij.plugins`](tools_gradle_intellij_plugin.md#intellij-extension-plugins) property for acceptable values. > {style="note"} @@ -185,12 +186,12 @@ Add the JARs of the plugin on which the project depends to the Classpat > {style="warning"} - + 1. Open the Project Structure dialog and go to Platform Settings | SDKs section. 2. Select the SDK used in the project. 3. Click the + button in the Classpath tab. -4. Select the plugin JAR depending on whether it is bundled or non-bundled plugin: +4. Select the plugin JAR depending on whether it is a bundled or non-bundled plugin: - For bundled plugins, the plugin JAR files are located in plugins/\$PLUGIN_NAME\$ or plugins/\$PLUGIN_NAME\$/lib under the main installation directory. - For non-bundled plugins, depending on the platform version, the plugin JAR files are located in: - [plugins directory for versions 2020.1+](https://www.jetbrains.com/help/idea/directories-used-by-the-ide-to-store-settings-caches-plugins-and-logs.html#plugins-directory) @@ -201,14 +202,14 @@ Add the JARs of the plugin on which the project depends to the Classpat ## 3. Dependency Declaration in plugin.xml {#dependency-declaration-in-pluginxml} -Regardless of whether a plugin project uses [](plugin_compatibility.md#modules-available-in-all-products), or [](plugin_compatibility.md#modules-specific-to-functionality), the correct module must be listed as a dependency in plugin.xml. +Regardless of whether a plugin project uses [](plugin_compatibility.md#modules-available-in-all-products) or [](plugin_compatibility.md#modules-specific-to-functionality), the correct module must be listed as a dependency in plugin.xml. If a project depends on another plugin, the dependency must be declared like a [module](plugin_compatibility.md#modules). If only general IntelliJ Platform features (APIs) are used, then a default dependency on `com.intellij.modules.platform` must be declared. To display a list of available IntelliJ Platform modules, invoke the [code completion](https://www.jetbrains.com/help/idea/auto-completing-code.html#4eac28ba) feature for the [``](plugin_configuration_file.md#idea-plugin__depends) element contents while editing the plugin project's plugin.xml file. In the plugin.xml, add a `` tag with the dependency plugin's ID as its content. -Continuing with the example from [Project Setup](#project-setup) above, the dependency declaration in plugin.xml would be: +Continuing with the example from the [Project Setup](#project-setup) above, the dependency declaration in plugin.xml would be: ```xml com.example.another-plugin