[md] plugin content extracted

This commit is contained in:
Anna Bulenkova 2015-04-13 13:11:23 +02:00
parent 73326a8586
commit b0ec9676c0
3 changed files with 63 additions and 61 deletions

View File

@ -13,7 +13,7 @@
* [Running and Debugging a Plugin](running_and_debugging_a_plugin.html)
* [Plugin Compatibility with IntelliJ Platform Products](plugin_compatibility.html)
* [Plugin Structure](plugin_structure.html)
* [Plugin Content](TODO)
* [Plugin Content](plugin_content.html)
* [Plugin Class Loaders](TODO)
* [Plugin Components](TODO)
* [Plugin Extensions and Extension](TODO)

61
plugin_content.md Normal file
View File

@ -0,0 +1,61 @@
---
layout: editable
title: Plugin Content
---
*There are 3 ways how to organize plugin content:*
1. A plugin consists of one .jar file placed in the plugins directory:
The archive should contain the configuration file (META-INF/plugin.xml) and classes that implement the plugin functionality.
The configuration file specifies the plugin name, description, version, vendor, the supported IDEA version, plugin components, actions and action groups, action user interface placement.
```
.IntelliJIDEAx0
plugins
sample.jar/
com/foo/.....
...
...
META-INF
plugin.xml
```
2. Plugin files are located in a folder:
```
.IntelliJIDEAx0
plugins
Sample
lib
libfoo.jar
libbar.jar
classes
com/foo/.....
...
...
META-INF
plugin.xml
```
The 'classes' folder and all jars located in the 'lib' folder are automatically added to the classpath.
3. Plugin files are located in a jar-file that is placed to the lib folder:
```
.IntelliJIDEAx0
plugins
Sample
lib
libfoo.jar
libbar.jar
Sample.jar/
com/foo/.....
...
...
META-INF
plugin.xml
```
All the jars from the 'lib' folder are automatically added to the classpath.

View File

@ -17,7 +17,7 @@ It doesn't specify any other APIs that may be used by plugins.
The following subjects are covered:
<!--TODO Links from TOC to certain parts of the document-->
* [Plugin Content](TODO)
* [Plugin Content](plugin_content.html)
* [Plugin Class Loaders](TODO)
@ -33,65 +33,6 @@ The following subjects are covered:
* [Plugin Dependencies](TODO)
## Plugin Content
*There are 3 ways how to organize plugin content:*
1. A plugin consists of one .jar file placed in the plugins directory:
The archive should contain the configuration file (META-INF/plugin.xml) and classes that implement the plugin functionality.
The configuration file specifies the plugin name, description, version, vendor, the supported IDEA version, plugin components, actions and action groups, action user interface placement.
```
.IntelliJIDEAx0
plugins
sample.jar/
com/foo/.....
...
...
META-INF
plugin.xml
```
2. Plugin files are located in a folder:
```
.IntelliJIDEAx0
plugins
Sample
lib
libfoo.jar
libbar.jar
classes
com/foo/.....
...
...
META-INF
plugin.xml
```
The 'classes' folder and all jars located in the 'lib' folder are automatically added to the classpath.
3. Plugin files are located in a jar-file that is placed to the lib folder:
```
.IntelliJIDEAx0
plugins
Sample
lib
libfoo.jar
libbar.jar
Sample.jar/
com/foo/.....
...
...
META-INF
plugin.xml
```
All the jars from the 'lib' folder are automatically added to the classpath.
## Plugin Class Loaders
To load classes of each plugin, IDEA uses a separate class loader.