首页 智能穿戴

Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南

分类:智能穿戴
字数: (7289)
阅读: (0472)
内容摘要:Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南,

在 Unity 开发过程中,持续集成/持续部署 (CI/CD) 能够显著提高开发效率,降低集成风险。本文将详细介绍如何在 Windows 10 环境下,搭建 Jenkins CI/CD 环境,实现 Unity 项目的自动化构建和部署。

为什么选择 Jenkins?

Jenkins 是一款开源的自动化服务器,能够自动化执行各种任务,例如构建、测试和部署软件。它具有丰富的插件生态系统,可以与各种工具集成,非常适合构建 CI/CD 流程。对比一些云端的 CI/CD 方案,例如 Azure DevOps,Jenkins 更加灵活,成本也更可控,尤其对于一些小型团队或者个人开发者来说,Jenkins 是一个不错的选择。 考虑到国内网络环境的复杂性,使用 Jenkins 能够更好地控制构建过程,避免一些由于网络不稳定导致的问题。

准备工作

在开始之前,请确保你已经安装了以下软件:

  • Java Development Kit (JDK): Jenkins 是一个 Java 应用程序,需要 JDK 才能运行。建议安装 JDK 8 或更高版本。
  • Unity Editor: 需要安装 Unity Editor,用于构建 Unity 项目。
  • Git: 用于版本控制和代码管理。
  • Windows 10 操作系统: 本文基于 Windows 10 环境进行演示。

Jenkins 安装与配置

  1. 下载 Jenkins

    访问 Jenkins 官网 (https://www.jenkins.io/), 下载 Windows 版本的 Jenkins 安装包。

    Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南
  2. 安装 Jenkins

    双击下载的安装包,按照提示完成安装。安装过程中,可以选择 Jenkins 的安装目录和端口号。 默认情况下,Jenkins 将使用 8080 端口。如果 8080 端口已被占用,可以选择其他端口。

  3. 启动 Jenkins

    安装完成后,Jenkins 会自动启动。如果没有自动启动,可以在 Windows 服务中找到 Jenkins 服务并手动启动。

    Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南
  4. 访问 Jenkins

    在浏览器中输入 http://localhost:8080 (如果使用了其他端口,请替换为相应的端口号),即可访问 Jenkins 控制台。首次访问时,需要输入管理员密码。密码通常位于 C:\ProgramData\Jenkins\.jenkins\secrets\initialAdminPassword 文件中。

  5. 安装常用插件

    登录 Jenkins 后,点击 "Manage Jenkins" -> "Manage Plugins" -> "Available",搜索并安装以下插件:

    Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南
    • Git Plugin: 用于从 Git 仓库拉取代码。
    • Unity3d Plugin: 用于构建 Unity 项目。(如果 Jenkins 没有这个官方插件,可以使用 Execute Shell 命令,自己编写命令行构建脚本)
    • Build Timestamp Plugin: 用于在构建过程中添加时间戳。
    • Pipeline Plugin: 用于创建 CI/CD Pipeline。
    • Publish Over SSH: 用于将构建好的文件部署到远程服务器。(可选,如果需要自动化部署到服务器)

配置 Unity 项目构建 Job

  1. 创建新 Job

    在 Jenkins 控制台中,点击 "New Item",输入 Job 名称,选择 "Freestyle project" 或 "Pipeline",点击 "OK"。

  2. 配置 Git 仓库

    在 "Source Code Management" 部分,选择 "Git",输入 Git 仓库的 URL 和凭据。

    Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南
  3. 配置构建步骤

    • 如果是 Freestyle project,在 "Build" 部分,点击 "Add build step",选择 "Execute Windows batch command",输入构建 Unity 项目的命令行。
    • 如果是 Pipeline,则需要编写 Jenkinsfile 文件,在文件中定义构建步骤。Jenkinsfile 可以放在 Git 仓库中,Jenkins 会自动读取。一个简单的 Jenkinsfile 示例如下:
    pipeline {
        agent any
        stages {
            stage('Checkout') {
                steps {
                    git 'https://github.com/your-repo/your-unity-project.git'
                }
            }
            stage('Build') {
                steps {
                    bat "C:\\Program Files\\Unity\\Hub\\Editor\\2021.3.LTS\\Editor\\Unity.exe -quit -batchmode -projectPath . -buildTarget Win64 -executeMethod BuildScript.BuildPlayer -logFile build.log"
                }
            }
        }
    }
    

    请注意替换 Unity.exe 的路径和构建参数。其中 -buildTarget 指定构建平台,-executeMethod 指定执行的构建脚本。BuildScript.BuildPlayer 是一个自定义的 Unity 构建脚本,用于自动化构建。

  4. 配置构建后操作

    在 "Post-build Actions" 部分,可以配置构建完成后要执行的操作,例如发布构建结果,发送通知等。

Unity 构建脚本 (Build Script)

在 Unity 项目中,需要创建一个构建脚本,用于自动化构建。以下是一个简单的构建脚本示例:

using UnityEditor;
using UnityEngine;

public class BuildScript
{
    [MenuItem("Build/Build Player")]
    public static void BuildPlayer()
    {
        string[] scenes = { "Assets/Scenes/MainScene.unity" };
        string buildPath = "Builds/Windows/MyGame.exe";
        BuildPipeline.BuildPlayer(scenes, buildPath, BuildTarget.StandaloneWindows64, BuildOptions.None);
        Debug.Log("Build complete: " + buildPath);
    }
}

将此脚本放在 Editor 文件夹中,然后在 Jenkins 中配置 -executeMethod BuildScript.BuildPlayer 即可。

实战避坑经验总结

  • 权限问题: Jenkins 运行时使用的用户可能没有访问 Unity 安装目录的权限,导致构建失败。需要确保 Jenkins 运行的用户具有足够的权限。
  • Unity 激活: Unity 需要激活才能进行构建。如果 Jenkins 运行在没有 Unity 激活的机器上,构建将会失败。可以使用命令行参数进行 Unity 激活。
  • 构建缓存: Unity 的构建过程可能会产生大量的缓存文件,占用磁盘空间。可以定期清理构建缓存,避免磁盘空间不足。
  • 日志分析: 构建过程中产生的日志文件对于排查问题非常重要。建议配置 Jenkins 保存构建日志,并在构建失败时及时分析日志。
  • 版本控制: 确保所有的代码和资源都纳入版本控制,方便回溯和管理。
  • 网络代理: 如果 Jenkins 运行在有网络代理的环境中,需要配置 Jenkins 的代理设置,才能正常访问外部资源。

通过以上步骤,你就可以在 Windows 10 环境下,使用 Jenkins 实现 Unity 项目的自动化构建 CI/CD。这将大大提高你的开发效率,降低集成风险。

Windows 下 Jenkins + Unity 实现自动化构建 CI/CD 完整指南

转载请注明出处: 代码一只喵

本文的链接地址: http://m.acea1.store/blog/129582.SHTML

本文最后 发布于2026-04-11 10:41:20,已经过了16天没有更新,若内容或图片 失效,请留言反馈

()
您可能对以下文章感兴趣
评论
  • 烤冷面 3 天前
    请问 Unity 激活这部分有什么好的解决方案吗?每次构建都提示需要激活很烦。
  • 西瓜冰冰凉 15 小时前
    感谢分享!正准备搞 Unity 的自动化构建,这篇文章很有帮助,省了不少时间。
  • 麻辣烫 4 天前
    写得真详细,正好解决了我的问题,之前一直卡在 Jenkins 权限上。
  • 榴莲控 2 天前
    请问 Unity 激活这部分有什么好的解决方案吗?每次构建都提示需要激活很烦。
  • 番茄炒蛋 2 小时前
    感谢分享!正准备搞 Unity 的自动化构建,这篇文章很有帮助,省了不少时间。