如何通过 Maven 将 zip 文件部署到 Nexus 存储库
How to deploy zip file to Nexus repository via Maven
我有一个要部署到 Nexus 存储库的 zip 文件。所以我创建了一个 pom.xml 文件和一个 settings.xml 文件来执行此操作。我能够成功上传到 nexus,但它似乎被部署为一个 jar 文件
当我放入 <packaging>zip</packaging>
元素时,maven 无法识别它。如何实现将 zip 文件部署到 nexus 的目标?任何帮助将不胜感激。
目录内容:
1. content.zip
2.pom文件
3.设置文件
pom.xml:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.company.ct.ty16.archive</groupId>
<artifactId>contentzip</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>Deploy-zip-file</name>
<description>Deploy zipped content file on Jenkins to Nexus</description>
...
...
...
</project>
注意:我没有使用 maven 构建 content.zip 文件,只是上传它
我认为你可以使用 mvn 部署文件 - https://maven.apache.org/guides/mini/guide-3rd-party-jars-remote.html
在 settings.xml
中定义您的服务器
<servers>
...
<server>
<id>server-snapshots</id>
<username>server-snapshots-username</username>
<password>server-snapshots-password</password>
</server>
...
</servers>
为 deploy
阶段定义部署文件配置
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<id>deploy-file</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<file>${project.build.directory}/${project.artifactId}-${project.version}.zip</file>
<repositoryId>${project.distributionManagement.snapshotRepository.id}</repositoryId>
<url>${project.distributionManagement.snapshotRepository.url}</url>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<packaging>zip</packaging>
</configuration>
</execution>
</executions>
</plugin>
定义快照存储库
<distributionManagement>
<snapshotRepository>
<id>server-snapshots</id>
<name>Snapshots repository (snapshots)</name>
<url>http://repository.com/repo/server-snapshots</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</snapshotRepository>
</distributionManagement>
执行mvn deploy
我有一个要部署到 Nexus 存储库的 zip 文件。所以我创建了一个 pom.xml 文件和一个 settings.xml 文件来执行此操作。我能够成功上传到 nexus,但它似乎被部署为一个 jar 文件
当我放入 <packaging>zip</packaging>
元素时,maven 无法识别它。如何实现将 zip 文件部署到 nexus 的目标?任何帮助将不胜感激。
目录内容: 1. content.zip 2.pom文件 3.设置文件
pom.xml:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.company.ct.ty16.archive</groupId>
<artifactId>contentzip</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>Deploy-zip-file</name>
<description>Deploy zipped content file on Jenkins to Nexus</description>
...
...
...
</project>
注意:我没有使用 maven 构建 content.zip 文件,只是上传它
我认为你可以使用 mvn 部署文件 - https://maven.apache.org/guides/mini/guide-3rd-party-jars-remote.html
在 settings.xml
中定义您的服务器<servers>
...
<server>
<id>server-snapshots</id>
<username>server-snapshots-username</username>
<password>server-snapshots-password</password>
</server>
...
</servers>
为 deploy
阶段定义部署文件配置
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<id>deploy-file</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<file>${project.build.directory}/${project.artifactId}-${project.version}.zip</file>
<repositoryId>${project.distributionManagement.snapshotRepository.id}</repositoryId>
<url>${project.distributionManagement.snapshotRepository.url}</url>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<packaging>zip</packaging>
</configuration>
</execution>
</executions>
</plugin>
定义快照存储库
<distributionManagement>
<snapshotRepository>
<id>server-snapshots</id>
<name>Snapshots repository (snapshots)</name>
<url>http://repository.com/repo/server-snapshots</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</snapshotRepository>
</distributionManagement>
执行mvn deploy