如何集成 Jenkins 和 Nexus(没有 maven)

How to integrate Jenkins and Nexus (without maven)

jenkins 和 nexus 安装在同一台机器上的 docker 个容器中。所有指南都描述了如何使用 Maven 进行集成。但是,如果我只需要将文件从 Jenkins 上传到 Nexus 怎么办?我知道这可以通过插件“Nexus Artifact Uploader”来完成,但我不明白具体是怎么做的

Nexus Artifact Uploader中,您需要填写以下信息:

Note: Below are the sample example data and the pre-requisite is to have a repository created in nexus.

  • Nexus 版本: NEXUS3(Nexus 存储库管理器的类型,例如 NEXUS2 或 NEXUS3)
  • 协议: HTTP(用于 Nexus 设置的协议,例如 HTTP 或 HTTPS)
  • Nexus URL: localhost:8081(Nexus 的URL)
  • 凭据: nexus-admin(用于访问 nexus 的凭据)
  • GroupId: 门户(创建项目的公司或组的唯一基本名称)
  • 版本:1.0(项目版本)
  • 存储库: maven-releases(您要上传工件的存储库名称)
  • ArtifactId: web-portal(项目的唯一名称)
  • 类型: tar.gz(工件打包类型,如 zip、tar、war、jar 等)
  • File: web-portal.tar.gz(工作区中的文件路径。例如:artifact.zip 或 artifact.jar)

同时找到截图:

将您的 nexus 与 Jenkins 连接起来的最简单方法 - Nexus OSS 是使用 maven setting.xml 许多教程都非常复杂 - 解决方案比看起来更简单。

第 1 步:在您的关系中创建一个具有部署角色的用户

步骤 2:在您的 Jenkins(配置文件提供程序插件)中创建一个 setting.xml,其中包含以下条目:

<servers>
    <server>
        <id>local-nexus</id>
        <username>mvn-deployer</username>
        <password>mvn-deployer</password>
    </server>
</servers>

第三步:在你的项目pom.xml中输入部署信息:

    <distributionManagement>
    <snapshotRepository>
        <id>local-nexus</id>
        <url>http://127.0.0.1:8082/repository/maven-snapshots/</url>
    </snapshotRepository>
    <repository>
        <id>local-nexus</id>
        <url>http://127.0.0.1:8082/repository/maven-releases/</url>
    </repository>
</distributionManagement>

<repositories>
    <repository>
        <id>local-nexus</id>
        <url>http://127.0.0.1:8082/repository/maven-public/</url>
    </repository>
</repositories>

第四步:创建maven jenkins构建项目

第 5 步:至少你只需要 运行 mvn 命令部署。

不要忘记为您的 docker 容器公开所有必要的端口