Spec-Zone.ru › Kotlin 1.6

Начало работы с Kotlin/Native с помощью Gradle

Gradle — это система сборки, которая широко используется в экосистемах Java, Android и других. Она является стандартным выбором для Kotlin/Native и Multiplatform в плане систем сборки.

Хотя большинство IDE, включая IntelliJ IDEA, могут генерировать необходимые файлы Gradle, этот учебник описывает, как создавать их вручную, чтобы лучше понять, как всё работает под капотом.

Для начала установите последнюю версию Gradle.

Если вы хотите использовать IDE, ознакомьтесь с учебником Использование IntelliJ IDEA.

Создание файлов проекта

  1. Создайте директорию проекта. Внутри неё создайте файл build.gradle или build.gradle.kts Gradle со следующим содержимым:

    // build.gradle.kts
    plugins {
        kotlin("multiplatform") version "1.6.20"
    }
    
    repositories {
        mavenCentral()
    }
    
    kotlin {
        macosX64("native") { // on macOS
        // linuxX64("native") // on Linux
        // mingwX64("native") // on Windows
            binaries {
                executable()
            }
        }
    }
    
    tasks.withType<Wrapper> {
        gradleVersion = "6.7.1"
        distributionType = Wrapper.DistributionType.BIN
    }
    
    // build.gradle
    plugins {
        id 'org.jetbrains.kotlin.multiplatform' version '1.6.20'
    }
    
    repositories {
        mavenCentral()
    }
    
    kotlin {
        macosX64('native') { // on macOS
        // linuxX64('native') // on Linux
        // mingwX64('native') // on Windows
            binaries {
                executable()
            }
        }
    }
    
    wrapper {
        gradleVersion = '6.7.1'
        distributionType = 'BIN'
    }
    

    Вы можете использовать различные пресеты целевых платформ, такие как macosX64, mingwX64, linuxX64, iosX64, для определения соответствующей целевой платформы. Имя пресета описывает платформу, для которой компилируется код. Эти пресеты целевых платформ необязательно принимают имя целевой платформы в качестве параметра, которое в данном случае равно native. Имя целевой платформы используется для генерации путей к исходным файлам и имён задач в проекте.

  2. Создайте пустой файл settings.gradle или settings.gradle.kts в директории проекта.

  3. Создайте директорию src/nativeMain/kotlin и поместите в неё файл hello.kt со следующим содержимым:

    fun main() {
        println("Hello, Kotlin/Native!")
    }
    

    По соглашению все исходные файлы располагаются в директориях src/<target name>[Main|Test]/kotlin, где main предназначены для исходного кода, а test — для тестов. <target name> соответствует целевой платформе (в данном случае native), как указано в файле сборки.

Теперь вы готовы собрать свой проект и запустить приложение.

Сборка и запуск приложения

  1. Из корневой директории проекта выполните команду сборки:

    gradle nativeBinaries
    

    Эта команда создаёт директорию build/bin/native с двумя директориями внутри: debugExecutable и releaseExecutable. Они содержат соответствующие двоичные файлы.

    По умолчанию имя двоичного файла совпадает с именем директории проекта.

  2. Для запуска проекта выполните следующую команду:

    build/bin/native/debugExecutable/<project_name>.kexe
    

    В терминале выводится "Hello, Kotlin/Native!".

Открытие проекта в IDE

Теперь вы можете открыть свой проект в любой IDE, поддерживающей Gradle. Если вы используете IntelliJ IDEA:

  1. Выберите Файл | Открыть....

  2. Выберите директорию проекта и нажмите Открыть.
    IntelliJ IDEA автоматически распознает его как проект Kotlin/Native.

Если у вас возникнут проблемы с проектом, IntelliJ IDEA отобразит сообщение об ошибке на вкладке Сборка.

Что дальше?

Узнайте, как создавать скрипты сборки Gradle для реальных проектов Kotlin/Native.

Последнее изменение: 07 апреля 2022
Начало работы с Kotlin/Native в IntelliJ IDEA Начало работы с Kotlin/Native с помощью компилятора командной строки

© 2010–2022 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/native-gradle.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API