Gradle Kotlin DSL. Добавить другой проект от которого зависит текущий.

 
 
 
Сообщения:28
Имеются два проекта ProjectA и ProjectB. ProjectB является реализацией библиотеки API. ProjectA - это программа, которая зависит от этой библиотеки(ProjectB). Как в Gradle Kotlin это реализовать? Т.е. как добавить зависимость в ProjectA, что бы IDEA могла найти классы и добавить зависимости ProjectB?

ProjectA build.gradle.kts:
plugins {
    kotlin("jvm") version "1.3.60-eap-76"
}

group = "org.example"
version = "2019.0.0"

repositories {
    maven { setUrl("https://dl.bintray.com/kotlin/kotlin-eap") }
    mavenCentral()
}

dependencies {
    implementation(kotlin("stdlib-jdk8"))
}

tasks {
    compileKotlin {
        kotlinOptions.jvmTarget = "12"
    }
    compileTestKotlin {
        kotlinOptions.jvmTarget = "12"
    }
}


ProjectA settings.gradle.kts:
pluginManagement {
    repositories {
        maven { setUrl("https://dl.bintray.com/kotlin/kotlin-eap") }

        mavenCentral()

        maven { setUrl("https://plugins.gradle.org/m2/") }
    }
}

rootProject.name = "ProjectA"
Изменен:26 окт 2019 12:52
 
 
Сообщения:28
Я решил проблему. Вот файлы "ProjectA":

build.gradle.kts:
plugins {
    kotlin("jvm") version "1.3.60-eap-76"
}

group = "org.example"
version = "2019.0.0"

repositories {
    maven { setUrl("https://dl.bintray.com/kotlin/kotlin-eap") }
    mavenCentral()
}

dependencies {
    implementation(kotlin("stdlib-jdk8"))
    implementation(project("ProjectB"))
}

tasks {
    compileKotlin {
        kotlinOptions.jvmTarget = "12"
    }
    compileTestKotlin {
        kotlinOptions.jvmTarget = "12"
    }
}


settings.gradle.kts:
pluginManagement {
    repositories {
        maven { setUrl("https://dl.bintray.com/kotlin/kotlin-eap") }

        mavenCentral()

        maven { setUrl("https://plugins.gradle.org/m2/") }
    }
}
rootProject.name = "ProjectA"
include(":ProjectB")
project(":ProjectB").projectDir = File("path to ProjectB")


Т.е. в файл сборки я добавил:
implementation(project("ProjectB"))

И в файл настройки добавил:
include(":ProjectB")
project(":ProjectB").projectDir = File("path to ProjectB")
Изменен:26 окт 2019 13:25
 
Модераторы:Нет
Сейчас эту тему просматривают:Нет