[Unity] 为什么一个失败的BuildPipeline.BuildPlayer在控制命令行中返回了错误的代码?...

查看:932 |回复:2 | 2021-12-31 12:58:48

您需要 登录 才可以下载或查看,没有账号?注册

x
问题
  • 从控制命令行运行Unity时,使用-executeMethod 和BuildPipeline.BuildPlayer 失败,并且接收到退出代码0(成功)。

2021-12-31 12:58:48  
 赞 赞 0

使用道具 登录

2个回答,把该问题分享到群,邀请大神一起回答。
2#
原因

当使用BuildPipeline.BuildPlayer时构建失败,Unity将在BuildPipeline.BuildPlayer完成后继续处理该方法。一旦运行整个方法,Unity将会停止返回成功的错误代码。如果在打开项目时有任何异常或崩溃,将会返回失败的错误代码。
回复 收起回复
2021-12-31 12:58:57   回复
 赞 赞 2

使用道具 登录

3#
解决方案

BuildPipeline.BuildPlayer返回一个字符串 – 如果这个字符串是空的,构建成功。下面的代码展现了读取错误并退出Unity的例子,当成功构建返回0值,反之返回1值。
Screenshot - 2021-12-31 12.58.38.png
或者,如果需要一个特定的返回代码(不是1),则抛出一个异常(例如throw new System.Exception( "error message" );),Unity编辑器将会退出并返回代码1.
注意,当从脚本访问EditorApplication.Exit 时,一旦完成,则无需自动退出编辑器,因为该方法将在结束之前退出编辑器。

回复 收起回复
2021-12-31 13:00:09   回复
 赞 赞 2

使用道具 登录

CG 游戏行业专业问题

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表