Maven dependency plugin maven依赖关系:跨模块复制

Maven dependency plugin maven依赖关系:跨模块复制,maven-dependency-plugin,Maven Dependency Plugin,拥有一个包含多个模块项目的项目,并且其自身拥有其他模块项目。我有一些生成特殊工件类型“.kar”的模块,我正在maven部署阶段将其部署到artifactory 现在我想找到一种方法,通过使用这个现有的pom,按版本从artifactory下载这些特定的工件 mvn依赖项:复制允许我下载每个特定工件的这个 我希望通过生成这些工件的pom文件来完成这项工作。问题是当我使用dependency:copy时,它只在当前pom上运行,而当前pom可能有也可能没有特殊工件 如果我在中使用它,那么它将重新部

拥有一个包含多个模块项目的项目,并且其自身拥有其他模块项目。我有一些生成特殊工件类型“.kar”的模块,我正在maven部署阶段将其部署到artifactory

现在我想找到一种方法,通过使用这个现有的pom,按版本从artifactory下载这些特定的工件

mvn依赖项:复制允许我下载每个特定工件的这个

我希望通过生成这些工件的pom文件来完成这项工作。问题是当我使用dependency:copy时,它只在当前pom上运行,而当前pom可能有也可能没有特殊工件


如果我在中使用它,那么它将重新部署所有工件并正确下载特殊工件。但这不是正确的解决方案。

您可以向项目中添加一个新模块,该模块将
添加到所有
.kar
工件中。在这个新模块的POM文件中,您可以使用maven dependency插件的
copy dependencies
目标

<project>

  <!-- Integrate this module into your multi-module project. -->
  <parent>
    <groupId>my.group.id</groupId>
    <artifactId>my-parent-pom</artifactId>
    <version>1.0.0-SNAPSHOT</version<
  </parent>

  ...

  <!-- Add dependencies for all your .kar artifacts. -->
  <dependencies>
    <dependency>
      <groupId>my.group.id</groupId>
      <artifactId>kar-artifact-1</artifactId>
      <version>${project.version}</version>
      <type>kar</type>
    </dependency>
    <dependency>
      <groupId>my.group.id</groupId>
      <artifactId>kar-artifact-2</artifactId>
      <version>${project.version}</version>
      <type>kar</type>
    </dependency>
    ...
  </dependencies>

  <build>
    <plugins>
      <!-- Use the maven-dependency-plugin to copy your .kar artifacts. -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>2.8</version>
        <executions>
          <execution>
            <id>copy-kar-artifacts</id>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <includeTypes>kar</includeTypes>
            </configuration>
          </execution>
        </executions>
      <plugin>
    </plugins>
  </build>

</project>

my.group.id
我的父母是波姆
1.0.0-SNAPSHOT