Недопустимая версия spring-boot-зависимостей при использовании jgitver и локального репо в maven - PullRequest
1 голос
/ 09 апреля 2020

Когда я использую spring-boot-starter-parent в сочетании с локальным репозиторием и jgitver, я получаю следующую ошибку:

[ERROR]   The project tmplsvcpkg:TMPL_SVC_NAME-parent:0.0.0-27-a592e4fb-feature_gitlabci-dirty (/home/user/git/service-template/pom.xml) has 1 error
[ERROR]   Non-resolvable parent POM for org.springframework.boot:spring-boot-starter-parent:[unknown-version]: Could not find artifact org.springframework.boot:spring-boot-dependencies:pom:0.0.0-27-a592e4fb-feature_gitlabci-dirty in internal-repository (https://mvnrepo) @ org.springframework.boot:spring-boot-starter-parent:[unknown-version], /home/user/git/service-template/.m2/repository/org/springframework/boot/spring-boot-starter-parent/2.2.0.RELEASE/spring-boot-starter-parent-2.2.0.RELEASE.pom, line 3, column 11 -> [Help 2]

Примечание unknown-version для spring-boot-starter -parent и 0.0.0-27-a592e4fb-feature_gitlabci-dirty для зависимостей весенней загрузки. Версия 0.0.0-27 -... - это версия, рассчитанная jgitver. Похоже, что разрешение версии как-то испорчено. Если я изменю локальный репозиторий на любой каталог за пределами моего проекта, он снова начнет работать. Если я подавлю jgitver, он снова начнет работать. Если я определю локальное репо еще глубже в моем проекте (например, maven.repo.local = x / y / z / .m2 / repository, ошибка все равно будет присутствовать.

Я определил родителя в моем pom. xml следующим образом:

        <parent>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-parent</artifactId>
                <version>2.2.0.RELEASE</version>
        </parent>

И я запускаю свой maven следующим образом:

mvn compile -Dmaven.repo.local=.m2/repository -U

Если я добавлю jgitver.skip = true, все будет работать.

Я подозреваю, что это может быть как-то связано с тем, что spring-boot-starter parent определяет своего родителя (spring-boot-dependencies) относительно его положения:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-dependencies</artifactId>
    <version>2.2.0.RELEASE</version>
    <relativePath>../../spring-boot-dependencies</relativePath>
</parent>

Есть у кого-нибудь идеи, почему это может происходить и как это исправить?

1 Ответ

0 голосов
/ 09 апреля 2020

Оказывается, это хорошо известная проблема, и она решается определенной конфигурацией плагина (вы должны исключить каталог .m2 в конфигурации плагина). Подробности в этом номере:

https://github.com/jgitver/jgitver-maven-plugin/issues/60

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...