Установка плагина generatePom выдает ошибку - PullRequest
0 голосов
/ 27 октября 2018

Мы предварительно упаковываем зависимость с приложением и используем плагин установки Maven для внедрения в путь к классам.

<dependencies>
  <dependency>
    <groupId>artifactXXX</groupId>
    <artifactId>artifactXXX</artifactId>
    <version>1.0</version>
  </dependency>
</dependencies>

В установке:

<executions>
  <execution>
    <id>install-artifactXXX</id>
    <phase>install</phase>
    <goals>
      <goal>install-file</goal>
    </goals>
    <configuration>
      <groupId>artifactXXX</groupId>
      <artifactId>artifactXXX</artifactId>
      <version>1.0</version>
      <packaging>jar</packaging>
      <file>${basedir}/jars/artifactXXX.jar</file>
      <generatePom>true</generatePom>
    </configuration>
  </execution>
</executions>

Однако в течение clean install Maven все еще пытается загрузить POM для зависимого JAR из Artifactory и выдает ошибку POM not found.
Что здесь делать?

1 Ответ

0 голосов
/ 27 октября 2018

Разрешение зависимости происходит до обработки <build>. Таким образом, в то время, когда Maven обрабатывает раздел <dependencies>, артефакт еще не установлен.

Вы должны выполнить install:install-file вручную в командной строке, по крайней мере, один раз перед сборкой POM (и вы должны знать об этом, если при использовании версии -SNAPSHOT зависимость, установленная предыдущей сборкой, используется в текущая сборка).

Кроме того, такая конфигурация не соответствует декларативному характеру POM Maven. Это все равно что пытаться вырастить растение из семян того растения, которое нужно вырастить.

...