C# 尝试为全息透镜建立统一项目

C# 尝试为全息透镜建立统一项目,c#,visual-studio,unity3d,hololens,C#,Visual Studio,Unity3d,Hololens,我试图为全息透镜构建一个统一项目,但得到以下错误: 操作UnityEditor.PackageManager.Requests.SearchRequest失败,错误为:UnityEditor.PackageManager.Error UnityEditor.EditorApplication:Internal_CallUpdateFunctions() 有人有主意了吗?任何使用UnityEditor名称空间的东西都将仅在Unity内部可用。UnityEditor命名空间在构建中被完全剥离 确保运

我试图为全息透镜构建一个统一项目,但得到以下错误:

操作UnityEditor.PackageManager.Requests.SearchRequest失败,错误为:UnityEditor.PackageManager.Error UnityEditor.EditorApplication:Internal_CallUpdateFunctions()


有人有主意了吗?

任何使用
UnityEditor
名称空间的东西都将仅在Unity内部可用。
UnityEditor
命名空间在构建中被完全剥离

确保运行时脚本中不依赖任何
UnityEditor

要避免使用该命名空间的文件生成错误,有两个选项:

  • 如果它们出现在自定义编辑器脚本中,请将这些脚本移动到名为
    editor
    的文件夹中。放置在这样一个文件夹中的任何内容也不会被编译到最终版本中,而只在Unity内部可用

  • 使用预处理器

    #if UNITY_EDITOR
    using UnityEditor;
    using UnityEditor.Internal;
    // Etc
    #endif
    
    而且

    #if UNITY_EDITOR  
    // Some code using UnityEditor stuff here
    #endif
    
    在脚本中的任何地方,都应该使用
    UnityEditor
    名称空间,并且只在Unity内部可用,但在构建中被剥离


  • 你能给我们一段代码吗?一个完整的、最少的和可验证的例子?我开始了一个新的项目,想测试我是否可以在一般情况下构建,所以实际上没有代码…你到底是如何尝试构建的?你能显示你的构建设置吗?我不认为这是一个构建错误。我认为错误发生在unity编辑器中。在运行/生成之前,请尝试清除控制台,并查看是否仍有错误。