IJSDK-670

This commit is contained in:
JohnHake 2019-10-09 15:05:30 -07:00
parent 69fcec8bd8
commit 77448785f9

View File

@ -8,13 +8,15 @@ JetBrains maintains public repositories that host artifacts related to the Intel
repositories make artifacts more accessible for plugin developers.
The IntelliJ Platform artifacts repositories are:
* [Releases repository](https://www.jetbrains.com/intellij-repository/releases/) for release and EAP versions.
* [Snapshots repository](https://www.jetbrains.com/intellij-repository/snapshots/) for EAP candidates and the latest EAP for each branch.
* [Releases repository](https://www.jetbrains.com/intellij-repository/releases/) for release versions by [build number](/basics/getting_started/build_number_ranges.md).
* [Snapshots repository](https://www.jetbrains.com/intellij-repository/snapshots/) for _BRANCH#-EAP-SNAPSHOT_, _EAP-CANDIDATE-SNAPSHOT_, _LATEST-EAP-SNAPSHOT_, and the _EAP-SNAPSHOT_.
See the [Mavin coordinates](#specify-the-maven-coordinates-for-the-artifact) section for details about specifying these artifacts.
Both the Releases and Snapshots repositories have two types of content:
* Binary and source code artifacts for cross-platform, ZIP distributions of IntelliJ Platform-based IDEs, such as IntelliJ IDEA, CLion, Rider, and MPS.
These artifacts are _not intended_ to be accessed directly from a plugin project's `build.gradle` file.
The `gradle-intellij-plugin` will access them as-needed for a plugin project.
* Binary and source code artifacts for cross-platform, ZIP distributions of IntelliJ Platform-based IDEs, such as IntelliJ IDEA, CLion, Rider, and MPS.
These artifacts are _not intended_ to be accessed directly from a plugin project's `build.gradle` file.
The `gradle-intellij-plugin` will access them as-needed for a plugin project.
* Artifacts for individual modules from the IntelliJ Platform.
These may be downloaded, or accessed directly from a `build.gradle` file, as explained below.
@ -31,8 +33,8 @@ To setup dependencies on a module there are two types of information needed:
### Specify the Repository URL
The URL for the desired artifact needs to be added to a Maven or Gradle script:
* For release or EAP versions, use `https://www.jetbrains.com/intellij-repository/releases`
* For EAP candidate snapshots, use `https://www.jetbrains.com/intellij-repository/snapshots`
* For release versions, use `https://www.jetbrains.com/intellij-repository/releases`
* For EAP snapshots, use `https://www.jetbrains.com/intellij-repository/snapshots`
* For dependencies on individual modules from the IntelliJ Platform, also use `https://jetbrains.bintray.com/intellij-third-party-dependencies`
### Specify the Maven Coordinates for the Artifact
@ -60,9 +62,16 @@ The table below shows some example module names and their corresponding groupId
|intellij.xml.impl | com.jetbrains.intellij.xml | xml-impl |
The artifact _version_ can be specified in one of several ways because each artifact [at the Repository URLs](#specify-the-repository-url) has multiple versions available:
* A branch build is specified as _BRANCH.BUILD[.FIX]_. For example, a branch build such as `141.233`, or a branch build with a fix such as `139.555.1`
* Release numbers are specified as _MAJOR[.MINOR][.FIX]_. For example `14`, or `14.1`, or `14.1.1`
* A snapshot of a branch from which the next EAP/release build will be produced is specified as _BRANCH-EAP-SNAPSHOT_. For example `141-EAP-SNAPSHOT`
* Specify release build versions as _MAJOR[.MINOR][.FIX]_. For example `14`, or `14.1`, or `14.1.1`
* Snapshot versions are specified as:
* The snapshot of the most recent branch build is specified as _BRANCH-EAP-SNAPSHOT_. For example, `193-EAP-SNAPSHOT`.
There is only one of this type of build for each branch of each product.
* The snapshot of the branch from which the next EAP/release build might be produced is specified as _BRANCH.BUILD-EAP-CANDIDATE-SNAPSHOT_. For example `193.4386-EAP-CANDIDATE-SNAPSHOT`.
There are multiple builds of this type, one for each build in each branch of every product.
* The latest snapshot of a product is always specified as _LATEST-EAP-SNAPSHOT_.
There is only one build of this type per product, and it is always the same as the _BRANCH-EAP-SNAPSHOT_ for the newest branch of the product.
* A snapshot of a branch is specified as _BRANCH.BUILD.FIX-EAP-SNAPSHOT_. For example, `193.4386.10-EAP-SNAPSHOT`.
There are many builds of this type for each branch of each product.
### Example Artifact Specification
For example, to specify the `jps-model-serialization` module:
@ -74,7 +83,7 @@ For example, to specify the `jps-model-serialization` module:
## Gradle Example for an Individual Module from the IntelliJ Platform
This section presents an example of using a Gradle script to incorporate an IntelliJ Platform module and repository in a `build.gradle` file.
The example illustrates declaring the artifact URL, Maven coordinates, and version for the `jps-model-serialization` module artifact.
The example illustrates declaring the artifact URL, Maven coordinates, and version for the `jps-model-serialization` module artifact.
There are two parts to the example: the repository and the dependency sections.
### Repositories Section