unity3d - 为什么 Unity 在构建中包含编辑器目录

标签 unity3d build

当我尝试构建我的游戏时,Unity 包含了我的 Editor 目录中的脚本。这意味着构建失败,因为 Unity.Editor 在构建期间不可访问。我正在使用 Unity 2020.1.6f1,我该如何解决这个问题?

这是我在构建过程中遇到的错误类型:

Assets\Scripts\Editor\EnemyLootEditor.cs(7,32): error CS0246: The type or namespace name 'Editor' could not be found (are you missing a using directive or an assembly reference?)

编辑器模式下启动游戏时不会出现这些错误。

这是我的 Scripts 文件夹的图片,其中包含我的所有代码文件,包括我的 Editor 文件:

1

最佳答案

正如@Thomas所说,是的,您必须检查您的Editor文件是否存储在Editor目录中,并在使用它们时使用编译器指令。

但这个问题似乎与程序集定义文件更相关,请查看相关的 link .

Are you using assembly definition files? They don't respect Editor folders. You need to add Editor asmdefs.

总而言之,如果您的项目中有一个 .asmdef 文件,并且您正在使用编辑器脚本,则您需要为您的编辑器脚本准备一个.asmdef 文件 .

关于unity3d - 为什么 Unity 在构建中包含编辑器目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64461565/

相关文章:

c# - 无法找出如何发出步行声音…(2d)

Unity3d 编辑器 : how to prevent changes from being undone upon exiting play mode?

c# - 如何将 admob 广告加载到 unity 5 项目中?

c# - Physics2D.OverlapCircleAll 未检测到其他游戏对象

c# - SqlDependency.Start 在 Unity 中不起作用?

build - 在heroku上安装二进制包

extjs - 如何使用 Cordova/PhoneGap 构建 Sencha 应用

windows - 如何在 Windows 上使用 CMake 进行非交互式构建?

c - 如何将 add_dependency 与 CMake 一起用于非子目录?

build - 指定非标准源文件夹