Как nexus-staging-maven-plugin использует <scm>информацию? - PullRequest
0 голосов
/ 28 мая 2018

У меня есть один репозиторий Git, который содержит несколько модулей Maven, использующих наследование Maven и агрегацию Maven.То есть в корневом каталоге есть родительский POM, который определяет некоторые модули, каждый из которых использует этот корневой POM в качестве своего родителя.

<project>
  …
  <groupId>io.example</groupId>
  <artifactId>parent</artifactId>
  <version>1.2.3-SNAPSHOT</version>
  <packaging>pom</packaging>
  …
  <scm>
    <connection>scm:git:https://bitbucket.org/example/foobar.git</connection>
    <developerConnection>scm:git:https://bitbucket.org/example/foobar.git</developerConnection>
    <url>https://bitbucket.org/example/foobar</url>
  </scm>
  …
  <modules>
    <module>foo</module>
    <module>bar</module>
  </modules>
  …

Я недавно обнаружил , чтоMaven добавит путь к модулю к значению <scm><url> для каждого модуля (foo и bar выше).Например, подмодуль foo получит URL-адрес SCM https://bitbucket.org/example/foobar/foo.

Так что каждый из моих модулей может переопределить секцию <scm>, чтобы POM подмодуля имелтот же URL СКМ, что и родительский POM?В любом случае, как плагин Nexus Staging Maven использует эту информацию SCM?

Я также опубликовал эту в Sonatype .

1 Ответ

0 голосов
/ 17 июля 2018

Относительно вашего первоначального вопроса в заголовке: он не использует его, учитывая код, указанный на github .Когда вы ищете 'scm' во всех файлах .java, вы получаете ноль хитов.Конечно, они могли бы сделать некоторые странные трюки, такие как построение строки, например "s" + "c" + "m", или она скрыта в какой-то сторонней зависимости, или ... Тем не менее, я думаю, что помимо официального ответа, это лучшее, что может сказать любой посторонний.

...