安装插件generatePom产生错误

Install plugin generatePom produces error

我们在应用中预先打包了一个依赖,使用Maven install plugin注入到classpath中。

<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 仍会尝试从 Artifactory 下载依赖 JAR 的 POM 并产生 POM 未找到错误。
这里要做什么?

依赖关系解析发生在 <build> 处理之前。因此,在 Maven 处理 <dependencies> 部分时,工件尚未安装。

您必须在 POM 构建之前至少在命令行上手动执行一次 install:install-file(并且您必须意识到这一点,如果使用 -SNAPSHOT 版本,则安装的依赖项当前版本中使用了以前的版本)。

此外,这样的配置不符合 Maven POM 的声明性质。这就像尝试从要种植的植物的种子中种植植物。