update information related to goland

This commit is contained in:
Karol Lewandowski 2022-07-29 13:11:31 +02:00
parent eb203ed29c
commit 4024035e8d
2 changed files with 34 additions and 3 deletions

View File

@ -85,7 +85,7 @@ The following table lists **(1)** modules or built-in plugins that provide speci
| `com.intellij.modules.clion` See **(3)** below. <br/>`com.intellij.clion` | CMake, Profiler, Embedded Development, Remote Development, Remote Debug, Disassembly | CLion |
| `com.intellij.cidr.base` | Native Debugger Integration, Utility Classes, C/C++ Project Model/Workspace Support (OCWorkspace, CidrWorkspace, etc.), C/C++ Build and Run Support | AppCode, CLion |
| `com.intellij.database` | **Database Tools and SQL** language PSI Model, Inspections, Completion, Refactoring, Queries | DataGrip, IntelliJ IDEA Ultimate, AppCode, PhpStorm, PyCharm Professional, RubyMine, CLion, GoLand, Rider, and WebStorm if the Database Tools and SQL plugin is installed. |
| `com.intellij.modules.go` | **Go** language PSI Model, Inspections, Intentions, Completion, Refactoring, Test Framework | GoLand |
| `com.intellij.modules.goland` See **(4)** below.<br/>`com.intellij.modules.go` | **Go** language PSI Model, Inspections, Intentions, Completion, Refactoring, Test Framework | GoLand |
| `com.intellij.modules.python` | **Python** language PSI Model, Inspections, Intentions, Completion, Refactoring, Test Framework | PyCharm, and other products if the Python plugin is installed. |
| `com.intellij.modules.rider` | Connection to **ReSharper** Process in Background | Rider |
| `com.intellij.modules.ruby` | **Ruby** language PSI Model, Inspections, Intentions, Completion, Refactoring, Test Framework | RubyMine, and IntelliJ IDEA Ultimate if the Ruby plugin is installed. |
@ -221,6 +221,10 @@ Consequently, [dependencies](plugin_dependencies.md) on AppCode and CLion functi
</tab>
</tabs>
**(4)** The `com.intellij.modules.go` module name is deprecated starting with the 2020.2 release. Use it only if your plugin targets versions older than 2020.2.
When targeting versions 2020.2 and newer, use `com.intellij.modules.goland`.
See [](goland.md) section for information about depending on the Go functionalities in IDEs other than GoLand.
## Exploring Module and Plugin APIs
Once the [dependency on a module or plugin](plugin_dependencies.md) is declared in <path>plugin.xml</path>, it's useful to explore the packages and classes available in that dependency.

View File

@ -68,17 +68,44 @@ Select a [version](https://plugins.jetbrains.com/plugin/9568-go/versions) of the
</tabs>
The dependency on the Go plugin APIs must be declared in the <path>plugin.xml</path> file.
As described in [Modules Specific to Functionality](plugin_compatibility.md#modules-specific-to-functionality) table, the `<depends>` tags must declare `com.intellij.modules.go`.
As described in [Modules Specific to Functionality](plugin_compatibility.md#modules-specific-to-functionality) table, the `<depends>` tags must declare `com.intellij.modules.goland`.
The <path>plugin.xml</path> file must also declare a dependency on `com.intellij.modules.platform` as explained in [Configuring the plugin.xml File](dev_alternate_products.md#configuring-pluginxml).
The dependency declaration is illustrated in the <path>plugin.xml</path> snippet below:
<tabs>
<tab title="2020.2 and later">
```xml
<!-- Requires the Go plugin -->
<depends>org.jetbrains.plugins.go</depends>
<depends>com.intellij.modules.goland</depends>
<!-- Requires the platform module to distinguish it from a legacy plugin -->
<depends>com.intellij.modules.platform</depends>
```
</tab>
<tab title="Pre-2020.2">
```xml
<!-- Requires the Go plugin -->
<depends>com.intellij.modules.go</depends>
<!-- Requires the platform module to distinguish it from a legacy plugin -->
<depends>com.intellij.modules.platform</depends>
```
</tab>
</tabs>
### Targeting IDEs Other Than GoLand
Depending on the `com.intellij.modules.goland` allows a plugin to be installed in the GoLand IDE only.
However, the Go plugin can be installed in [IntelliJ IDEA Ultimate](https://www.jetbrains.com/idea/) and potentially other IDEs.
To make the plugin compatible with GoLand and other IDEs supporting the Go language consider depending on:
* `org.jetbrains.plugins.go` - The plugin will be loaded only when the Go plugin is actually installed in the running IDE.
* `com.intellij.modules.go-capable` - The plugin will be loaded in IDEs that are capable of installing the Go plugin.
Note that the Go plugin doesn't have to be actually installed when this module is present.
## Available GoLand APIs
> See [](goland_extension_point_list.md) for the complete list.