Files
kotlin-fork/libraries
Ilya Matveev 2938b69ff5 [Gradle, native] Disable platform libraries generation by default
Since there are a lot of changes around klibs in 1.4-M2, it was
decided to postpone enabling user-side platform libraries generation
by default. This patch switches the default distribution type to
prebuilt.

It also slightly refactors the code allowing user to choose the
distribution type. Now, there are only two distribution types
available:

- prebuilt - the default type, contains prebuilt platform libs.
             A distribution archive has the "-prebuilt-" classifier.
- light    - doesn't contain platform libs in an archive and
             generates them at the user side. The archive has no
             classifier to avoid changes in the K/N build logic and
             TC configurations.

The same types are also available for 1.3 but with sightly different
convention:

- prebuilt - the default type, contains prebuilt platform libs.
             A distribution archive has no classifier.
- light    - aka "restricted" distribution, doesn't contain
             platform libs for Apple platforms. The archive has
             the "-restricted-" suffix. Doesn't have a facility
             to build the libraries at the user side.

Issue #KT-38174 Fixed
2020-04-17 20:07:00 +07:00
..
2020-04-17 13:38:51 +02:00

Kotlin Libraries

This part of the project contains the sources of the following libraries:

  • kotlin-stdlib, the standard library for Kotlin/JVM, Kotlin/JS and its additional parts for JDK 7 and JDK 8
  • kotlin-reflect, the library for full reflection support
  • kotlin-test, the library for multiplatform unit testing
  • kotlin-annotations-jvm, the annotations to improve types in the Java code to look better when being consumed in the Kotlin code.

These libraries are built as a part of the root Gradle project.

Kotlin Maven Tools

This area of the project is the root for Maven build.

You can work with the maven modules of this maven project in IDEA from the root IDEA project. After importing you'll be able to explore maven projects and run goals directly from IDEA with the instruments on the right sidebar.

Building

You need to install a recent (at least 3.3) Maven distribution.

Before building this Maven project you need to build and install the required artifacts built with Gradle to the local maven repository, by issuing the following command in the root project:

./gradlew install

Note: on Windows type gradlew without the leading ./

This command assembles and puts the artifacts to the local maven repository to be used by the subsequent maven build. See also root ReadMe.md, section "Building".

Then you can build maven artifacts with Maven:

mvn install

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="-Xmx2G"