Установка пути в Gradle.Когда использовать косую черту '/' и когда двоеточие ':' - PullRequest
0 голосов
/ 13 сентября 2018

Я изучаю Gradle (сейчас версия 4.10), и меня смущает установка пути с использованием разделителей ':' и '/'. В каких ситуациях лучше использовать эти типы? Я не уверен, но похоже, что двоеточия можно использовать только при установке зависимостей, в том числе проектов, добавление задач с другой стороны косой черты используется для установки путей для ex:

// works                                                     
def webappDir = "$projectDir/src/main/webapp"   

// doesn't work output: home/projectName/:src:main:webapp                         
def webappDir = "$projectDir:src:main:webapp"

1 Ответ

0 голосов
/ 13 сентября 2018

Вы должны использовать символ '/' при работе с ресурсами типа File (как в вашем примере): это стандартный символ-разделитель файлов

// path to the webapp directory
def webappDir = "$projectDir/src/main/webapp" 

В двух основных ситуациях вы будете использовать символ ':':

  1. Пути к проектам или задачам

При работе в многопроектной сборке символ ':' используется для обозначения проекта или задачи в иерархии: :subProject1, :subProject:taskA, например.

Путь к проекту имеет следующий шаблон: он начинается с необязательного двоеточия, которое обозначает корневой проект. Корневой проект является единственным проектом в пути, который не указан его именем. Остальная часть пути проекта представляет собой разделенную двоеточиями последовательность имен проектов, где следующий проект является подпроектом предыдущего проекта.

Больше информации здесь: https://docs.gradle.org/current/userguide/multi_project_builds.html#sec:project_and_task_paths

  1. Конфигурация зависимостей

При использовании «строковой нотации» для объявления зависимостей вы будете использовать «:» в качестве разделителя для частей группы / модуля / версии, например: runtime 'org.springframework:spring-core:2.5'. Более подробная информация об обозначениях зависимостей здесь: https://docs.gradle.org/current/userguide/dependency_types.html

...