[英]Maven - why maven won't download the dependency pom in addition to the jar file
我有一个Maven项目。 我的依赖项之一是zip文件。 Maven将此zip文件下载到本地存储库,但pom文件也不在那里。 我如何指示Maven也下载pom文件? 我依赖的类型是zip。
pom文件存在于远程存储库中。 pom文件:
<modelVersion>4.0.0</modelVersion>
<groupId>com.g.g</groupId>
<artifactId>art</artifactId>
<name>art</name>
<version>1-SNAPSHOT</version>
<packaging>pom</packaging>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptors>
<descriptor>createZip.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
deploy命令:
call mvn clean install
call mvn deploy:deploy-file -Durl=url -Dpackaging=zip -Dfile="%~dp0\target\art-1-SNAPSHOT.zip" -DgroupId=com.g.g -DartifactId=art -Dversion=1-SNAPSHOT -DrepositoryId=... -DpomFile="pom.xml"
依赖项:
<dependency>
<groupId>com.g.g</groupId>
<artifactId>art</artifactId>
<version>1-SNAPSHOT</version>
<type>zip</type>
如果同时需要zip和pom,则可以将它们都指定为依赖项。
<dependency>
<groupId>com.g.g</groupId>
<artifactId>art</artifactId>
<version>1-SNAPSHOT</version>
<type>zip</type>
<dependency>
<groupId>com.g.g</groupId>
<artifactId>art</artifactId>
<version>1-SNAPSHOT</version>
<type>pom</type>
如果您不想将pom指定为依赖项,则可以使用另一种方法:Maven依赖项插件具有get mojo ,它允许从远程存储库下载命名的工件。
这可能是因为packaging
中pom.xml
从依赖的包装不同。 尽管pom.xml的打包方式为pom
,但实际的依赖打包方式为zip
。
尝试将pom.xml
的<packaging>
更改为zip
,看看是否可以解决该问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.