Plugins are extensions to IntelliJ IDEA core functionality. They provide the IDE integration with version control systems (VCS) and application servers, add support for various development technologies, frameworks and programming languages, and so on.
The more plugins are installed and enabled, the more features you have available. On the other hand, disabling unnecessary plugins may increase the IDE performance, especially on "less powerful" computers.
Certain plugins are independent, certain are not. Dependent plugins require other plugins to be enabled.
Categories of plugins
In relation to IntelliJ IDEA, plugins may be attributed to one of the following categories:
- Plugins bundled with the IDE. These plugins are installed and enabled by default. You can disable unnecessary bundled plugins, but you cannot uninstall them. See Enabling and Disabling Plugins.
- Repository plugins, that is, plugins stored in plugin repositories (e.g., the JetBrains Plugin Repository). To be able to use the repository plugins, you should download and install them. See Installing, Updating and Uninstalling Repository Plugins.
IntelliJ IDEA provides access to IntelliJ IDEA Plugin Repository at http://plugins.jetbrains.com/idea. You can also set up your own, enterprise plugin repositories, for example, to store plugins that you want to reserve for your company's internal use only. (A plugin repository corresponds to one or more Web servers.)
IntelliJ IDEA provides an open API that enables you to extend the IntelliJ IDEA functionality: add new intention actions, code inspections and refactorings, facilities for integrating the IDE with various external systems, and more.
For plugin development, IntelliJ IDEA provides dedicated SDK, module and run/debug configuration types.
For more information, refer to: