Jakub Chrzanowski 4e802980f2
Webhelp migration (#347)
* [webhelp] Fixes for TXP00152, TXP00002, test build 27 Jul 22:26

* [webhelp] Fixes for Part #4 TXP00010, EXCEPT decimal numbers in section titles

* [webhelp] Fixes for Part #5 TXP00017

* [webhelp] Fixes for Part #4 TXP00010 - removed numbers from page section titles in "Custom Language Support Tutorial" and "Testing a Custom Language Plugin".

* [webhelp] Removed numbers from page section titles in rest of project *.md files.

* [new webhelp] Build #44 changes

* [new webhelp] Maintenance merge from master

* [new webhelp] Add placeholder file for webhelp import.

* [webhelp] Correct redirects for file name changes

* [webhelp] TOC not needed in webhelp

* [format] {:toc} not needed for webhelp

* add {:disable-links} to ensure demo links are not interpreted as real links.

* Put all badges on the same line to simplify composition.

* formatter.md: fix upsource link

* fix some links

* api_changes_list.md: remove note

* migrate to webhelp - initial

* fix GH edit URL

* remove sdkdocs-template setup in VCS config

* remove recently_updated.md

* restore COC/CONTRIBUTING.md

* api_changes_list.md: remove note

* useful_links.md: IPE

Co-authored-by: JohnHake <john.hake@jetbrains.com>
Co-authored-by: Yann Cébron <yann.cebron@jetbrains.com>
2021-01-14 16:07:39 +01:00

57 lines
2.8 KiB
Markdown

[//]: # (title: Setting Up a Development Environment)
<!-- Copyright 2000-2020 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
> For new projects, it is highly recommended to use [Gradle](gradle_build_system.md).
>
{type="note"}
### Preliminary Steps
Use the following checklist to ensure that you are ready to develop your custom plugins.
- **Get IntelliJ IDEA CE source code** on your local computer.
Getting IntelliJ IDEA CE source code is not a requirement for plugin development, but having it makes debugging your plugins much more straightforward.
For detailed instructions, refer to the _Getting IntelliJ IDEA Community Edition Source Code_ section of [Check Out And Build Community Edition](upsource:///README.md).
Note that building IntelliJ IDEA CE from source code is not required for plugin development.
- **Plugin DevKit** plugin must be [enabled in IntelliJ IDEA](https://www.jetbrains.com/help/idea/managing-plugins.html).
- **IntelliJ Platform SDK** must be configured for your IDEA project.
For more information, see below.
### Configuring IntelliJ Platform SDK
To set up your plugin development environment:
* Create a new *IntelliJ Platform SDK* under **File \| Project Structure**:
![Create IntelliJ Platform SDK](create_intellij_idea_sdk.png)
<br/>
<br/>
* Specify the installation folder of the *IntelliJ IDEA Community Edition* as the home directory.
> You may use IntelliJ IDEA Ultimate as an alternative, but debugging the core code will only work with the *Community Edition*.
![Set Home Directory](set_home_directory.png)
<br/>
<br/>
* Select **1.8** as the default Java SDK.
See the _IntelliJ Build Configuration_ section of [Check Out And Build Community Edition](upsource:///README.md) for instructions about creating **1.8** Java SDK.
![Set IDEA JDK](set_java_sdk.png)
<br/>
<br/>
* In the Sourcepath tab of the SDK settings, click the *Add* button:
![Add Sourcepath](add_sourcepath.png)
<br/>
<br/>
* Specify the source code directory for the *IntelliJ IDEA Community Edition*:
![Specify Source Paths](community_sources_directory.png)
<br/>
<br/>
* Specify the **Sandbox Home** directory.
The *Sandbox Home* directory stores the settings of the IDE development instance launched from a Plugin Project's **Run** configuration.
Shown below is the default *Sandbox Home* directory for a user on Mac OS X.
Any directory can be chosen as the *Sandbox Home* location.
Use the ellipsis button (shown below) to define a custom location.
>
{type="warning"}
See the [IDE Development Instances](ide_development_instance.md) page for more information about default *Sandbox Home* directory locations and contents.
![Specify Sandbox Path](plugins-sandbox.png)