gen_client_json.bat 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. :: 设置工作路径
  4. set "WORKSPACE=.."
  5. set "LUBAN_DLL=%WORKSPACE%\lubanBuild\luban\Luban\Luban.dll"
  6. set "DATA_OUTPUT_DIR=%WORKSPACE%\..\GameClient\Assets\Game\CSShare\GFG\HotUpdate\LuBanConfig\LubanData"
  7. set "CODE_OUTPUT_DIR=%WORKSPACE%\..\GameClient\Assets\Game\CSShare\GFG\HotUpdate\LuBanConfig\Luban"
  8. set "CONF_ROOT=."
  9. :: 显示关键路径信息
  10. echo.
  11. echo [路径信息]
  12. echo Luban.dll路径: %LUBAN_DLL%
  13. echo 数据输出目录: %DATA_OUTPUT_DIR%
  14. echo 代码输出目录: %CODE_OUTPUT_DIR%
  15. echo 配置文件路径: %CONF_ROOT%\luban.conf
  16. echo.
  17. :: 检查关键文件是否存在
  18. if not exist "%LUBAN_DLL%" (
  19. echo [错误] 找不到Luban.dll文件
  20. echo 请检查路径: %LUBAN_DLL%
  21. pause
  22. exit /b 1
  23. )
  24. if not exist "%CONF_ROOT%\luban.conf" (
  25. echo [错误] 找不到配置文件luban.conf
  26. echo 请检查路径: %CONF_ROOT%\luban.conf
  27. pause
  28. exit /b 1
  29. )
  30. :: 创建输出目录(如果不存在)
  31. if not exist "%DATA_OUTPUT_DIR%" (
  32. echo 创建数据输出目录...
  33. mkdir "%DATA_OUTPUT_DIR%"
  34. )
  35. if not exist "%CODE_OUTPUT_DIR%" (
  36. echo 创建代码输出目录...
  37. mkdir "%CODE_OUTPUT_DIR%"
  38. )
  39. :: 执行Luban生成命令
  40. echo.
  41. echo 正在执行Luban生成...
  42. echo.
  43. dotnet "%LUBAN_DLL%" ^
  44. -t client ^
  45. -d json ^
  46. -c cs-simple-json ^
  47. -p dale_pipeline ^
  48. --conf "%CONF_ROOT%\luban.conf" ^
  49. -x outputDataDir="%DATA_OUTPUT_DIR%" ^
  50. outputCodeDir="%CODE_OUTPUT_DIR%" ^
  51. outputSaver.json.cleanUpOutputDir=0 ^
  52. outputSaver.cs-simple-json.cleanUpOutputDir=0
  53. :: 错误处理
  54. set "EXIT_CODE=%errorlevel%"
  55. echo.
  56. if %EXIT_CODE% EQU 0 (
  57. echo Luban生成成功完成!
  58. ) else (
  59. echo [错误] Luban生成失败,错误代码: %EXIT_CODE%
  60. echo.
  61. echo 可能原因:
  62. echo 1. 配置文件luban.conf有错误
  63. echo 2. Excel数据文件格式有问题
  64. echo 3. 输出目录权限不足
  65. echo 4. Luban.dll版本不匹配
  66. )
  67. pause
  68. exit /b %EXIT_CODE%