Gradle проект против зависимости модуля?

Я знаком с compile project(':A') синтаксис, где один подмодуль многомодульного проекта объявляет зависимость компиляции от другого подмодуля. Недавно наткнулся compile module(':A') (извините, нет ссылки). Чем второй отличается от первого?

1 ответ

Прямо из документов:

23.4.2. Зависимости клиентского модуля

Зависимости клиентского модуля позволяют объявлять транзитивные зависимости непосредственно в скрипте сборки. Они заменяют дескриптор модуля во внешнем репозитории.

Пример 23.8. Зависимости клиентского модуля - транзитивные зависимости

build.gradle
dependencies {
    runtime module("org.codehaus.groovy:groovy:2.4.4") {
        dependency("commons-cli:commons-cli:1.0") {
            transitive = false
        }
        module(group: 'org.apache.ant', name: 'ant', version: '1.9.6') {
            dependencies "org.apache.ant:ant-launcher:1.9.6@jar",
                         "org.apache.ant:ant-junit:1.9.6"
        }
    }
}

См. Документацию здесь: https://docs.gradle.org/current/userguide/userguide_single.html

Другие вопросы по тегам