Точка берется вперед Sla sh в скрипте Gradle - PullRequest
0 голосов
/ 13 января 2020

Я пытаюсь под кодом

compile "release/20.02:HspJS:"
compile "${PLANNING_BRANCH_NAME_LOCATION}:EpmStructure:"
compile "${PLANNING_BRANCH_NAME_LOCATION}:EpmStructureModel:"
compile "${SM_BRANCH_NAME_LOCATION}:HSFServer:"
compile "${CALCMANAGER_BRANCH_NAME_LOCATION}:calcmgrcommon:"

Я получаю ниже вывода

http://artifacthub.com/epmpbcs-release-local/release/**20/02**/HspJS.jar

Но желаемый вывод

http://artifacthub.oraclecorp.com/epmpbcs-release-local/release/**20.02**/HspJS.jar

Это gradle файл. Пожалуйста, дайте мне знать, что мне не хватает

1 Ответ

0 голосов
/ 13 января 2020

Это связано с тем, как координаты артефактов переводятся в папки в репозитории, например, в Maven Central и других. При этом используется аналогичный перевод с точечными именами, как и для Java пакетов.

Например, артефакт com.fasterxml.jackson.core:jackson-core:<version> находится в https://repo1.maven.org/maven2/com/fasterxml/jackson/core/jackson-core/<version>/jackson-core-<version>.jar.

Артефакт, который вы пытаетесь создать ссылка, кажется, имеет нестандартный макет (или, по крайней мере, не макет Maven). Я ожидал бы, что координаты, такие как release:HspJS:20.02 (которые затем будут переведены в местоположение http://artifacthub.com/epmpbcs-release-local/release/HspJS/20.02/HspJS-20.02.jar

Если ваш репозиторий использует нестандартную компоновку, то вам нужно настроить gradle, чтобы принять это см. Объявление репозиториев

Учитывая пример, вам, вероятно, потребуется объявить свой репозиторий как-то вроде:

repositories {
    ivy {
        url "http://artifacthub.oraclecorp.com/epmpbcs-release-local"
        patternLayout {
            artifact "[module]/[revision]/[artifact].[ext]"
        }
    }
}

, а затем объявить свою зависимость как:

compile "release:HspJS:20.02"
...