blob: d6136c41847231add4ab8ef0dcd153549cc93a70 [file] [log] [blame] [view] [edit]
## Kotlin Libraries
This area of the project is all written in Kotlin and assumes you've got the [Kotlin IDEA plugin installed](http://confluence.jetbrains.net/display/Kotlin/Getting+Started).
This area of the project uses Maven for its build. You need to install a recent [Maven](http://maven.apache.org/) distribution and
setup environment variables as following:
JDK_16="path to JDK 1.6"
JDK_17="path to JDK 1.7"
JDK_18="path to JDK 1.8"
The main part of kotlin runtime and all tools are compiled against JDK 1.6 and also there are two extensions
for the standard library which are compiled against JDK 1.7 and 1.8 respectively, so you need to have all these JDKs installed.
Then you'll be able to build tools and libraries with:
mvn install
For more details see the [Getting Started Guide](http://confluence.jetbrains.net/display/Kotlin/Getting+Started).
Be sure to build Kotlin compiler distribution before launching Maven: see ReadMe.md at root level, section "Building".
If your maven build is failing with Out-Of-Memory errors, set JVM options for maven in MAVEN_OPTS environment variable like this:
MAVEN_OPTS="-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m"
## Gradle Plugin
Gradle plugin sources can be found at the [kotlin-gradle-plugin](tools/kotlin-gradle-plugin) module.
To build only gradle plugin and necessary dependencies use the following command:
```bash
mvn clean install -pl :kotlin-gradle-plugin -am
# to skip all tests also add -DskipTests
```
### Gradle integration tests
Gradle integration tests can be found at the [kotlin-gradle-plugin-integration-tests](tools/kotlin-gradle-plugin-integration-tests) module.
These tests are slow, so they are *skipped by default*.
To run integration tests use the 'run-gradle-integration-tests' profile:
```bash
mvn clean install -pl :kotlin-gradle-plugin-integration-tests -am -Prun-gradle-integration-tests
```