我有maven项目。当我在target
文件夹中点击安装 maven build zip 和 jar 文件时。
但是当我点击部署时,它只会将 jar 文件和依赖项部署到远程存储库。
问题:如何使用标准maven插件添加zip文件以部署到远程nexus存储库。
修改
<packaging>custom-zip<packaging>
答案 0 :(得分:2)
为了正确install
和deploy
一个额外的工件(由构建生成的文件,通常也遵循其版本控制和相关项目结果的连贯部分),您需要< strong>将添加到构建中,以便Maven将其作为其结果的官方可交付处理。
要将文件附加到构建,您可以使用build-helper-maven-plugin
。
以下是usage页面的示例摘录:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.12</version>
<executions>
<execution>
<id>attach-artifacts</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>the-generated-file</file>
<type>extension of your file</type>
<classifier>optional</classifier>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
您应该在负责生成文件的插件声明之后放置上面的配置,也就是说,当您尝试将文件附加到构建时该文件应该存在。查看file
配置元素,您应在此处指定文件,例如target\myfile.zip
。在这种情况下,它会在package
阶段附加,以便install
和deploy
阶段在处理过程中将其考虑在内。
调用
时mvn clean install
然后,您将看到构建输出的一部分:
[INFO] --- build-helper-maven-plugin:1.12:attach-artifact (attach-artifacts) @ zip-example ---
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ zip-example ---
[INFO] Installing C:\data\eclipse-workspace\zip-example\target\zip-example-0.0.1-SNAPSHOT.jar to c:\data\m2\repository\com\sample\zip-example\0.0.1-SNAPSHOT\zip-example-0.0.1-SNAPSHOT.jar
[INFO] Installing C:\data\eclipse-workspace\zip-example\pom.xml to c:\data\m2\repository\com\sample\zip-example\0.0.1-SNAPSHOT\zip-example-0.0.1-SNAPSHOT.pom
[INFO] Installing C:\data\eclipse-workspace\zip-example\sample.zip to c:\data\m2\repository\com\sample\zip-example\0.0.1-SNAPSHOT\zip-example-0.0.1-SNAPSHOT-optional.zip
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
注意:sample.zip
实际上已作为m2
复制到zip-example-0.0.1-SNAPSHOT-optional.zip
本地存储库,因此根据项目配置(artifactId
,version
重命名, classifier
)。