Maven:如何将父jar下载到自定义位置?

时间:2016-01-23 05:32:55

标签: java maven pom.xml parent-pom

这是In maven project How to download the library in source/binary, mentioned in the <parent> tag in POM file?

的后续帖子
<project>
<parent>
 <groupId>org.jboss.weld</groupId>
 <artifactId>weld-api-bom</artifactId>
 <version>1.0</version>
 <relativePath>../bom/pom.xml</relativePath>
</parent>

 <modelVersion>4.0.0</modelVersion>
 <artifactId>my-module</artifactId>

 <dependencies>
 <dependency>
  <groupId>javax.el</groupId>
  <artifactId>el-api</artifactId>
  <optional>true</optional>
 </dependency>
</dependencies>

如何将父jar下载到自定义位置?

1 个答案:

答案 0 :(得分:1)

relativePath只会查找该位置的pom,如果找不到,则会在存储库中查找它。它实际上并没有将pom下载到该位置。如果您只想构建项目,只需确保父pom在存储库中可用。

如果您要找的是在找到它之后实际下载pom,请尝试使用Maven Dependency Plugin,将其添加到您的pom中:

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-dependency-plugin</artifactId>
      <version>2.10</version>
      <configuration>
        <artifact>org.jboss.weld:weld-api-bom:1.0:pom</artifact>
        <destination>../bom/pom.xml</destination>
      </configuration>
      <executions>
        <execution>
        <goals>
          <goal>get</goal>
        </goals>
      </execution>
      </executions>
    </plugin>
  </plugins>
</build>

然后在命令行中:

mvn dependency:get

请注意,工件和目标在插件配置中指定。

如果您不想修改pom,可以尝试:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:get -Dartifact=org.jboss.weld:weld-api-bom:1.0:pom -Ddest=../bom/pom.xml