【问题标题】:Unity3D problems building on MacOS在 MacOS 上构建 Unity3D 问题
【发布时间】:2019-06-01 15:50:57
【问题描述】:

我正在尝试“构建”在 Unity3D 上制作的游戏项目,但不断收到与代码无关的错误;据我了解。

  • Unity 3D 版本 2018.3.0f2
  • MacBook Pro、MacOS Mojave v. 10.14.2

游戏在这台和另外两台运行 Windows 10 操作系统的设备上运行良好。它在 Windows 操作系统上构建没有问题,但在 MacOS 上却没有。 项目完全相同;通过闪存驱动器复制以在两者之间传输,并作为 git 项目拉取。

我尝试通过安装助手和 Unity Hub 安装 Unity3D;两者都没有改变。

我确保安装了所有必需的依赖项,并多次重新安装。全新安装、重新启动,甚至重新安装操作系统,因为我刚刚让这台笔记本电脑用于我的 Unity 游戏开发项目。 经过多次失败的尝试,我专门为这个项目制作了一个分区驱动器,重新安装了所有东西并第一次运行了这个项目。试玩了一下,运行良好,但仍然无法构建。我这样做是因为我认为这是一个安全或“访问权限”问题。 有了这个,我什至允许 Unity 通过 Mac OS 的安全设置访问整个驱动器。

[1] https://imgur.com/q4prwXh“错误截图”。

预期项目将毫无问题地构建;发生的事情是我遇到了这些错误,我将尝试发布图片。

  • 文本中的错误以防屏幕截图不起作用:
  • [1]

    UnauthorizedAccessException:访问路径“/Volumes/(edited >out)/Temp/StagingArea/Data/Managed/Unity.Analytics.StandardEvents.dll” >被拒绝。 System.IO.File.Delete(System.String 路径)(在:0) UnityEditorInternal.AssemblyStripper.RunAssemblyStripper(System.Collections.IEnumerable 程序集,System.String managedAssemblyFolderPath,System.String[] assemblyToStrip,System.String[] searchDirs,System.String monoLinkerPath,UnityEditorInternal.IIl2CppPlatformProvider platformProvider,UnityEditor.RuntimeClassRegistry rcr,UnityEditor.ManagedStrippingLevel managedStrippingLevel) (在 /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/AssemblyStripper.cs:372) UnityEditorInternal.AssemblyStripper.StripAssemblies (System.String managedAssemblyFolderPath, UnityEditorInternal.IIl2CppPlatformProvider platformProvider, UnityEditor.RuntimeClassRegistry rcr, UnityEditor.ManagedStrippingLevel managedStrippingLevel) (在/Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/AssemblyStripper.cs:216 ) UnityEditorInternal.IL2CPPBuilder.Run () (在/Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:203) UnityEditorInternal.IL2CPPUtils.RunIl2Cpp(System.String stagingAreaData,UnityEditorInternal.IIl2CppPlatformProvider platformProvider,System.Action1[T] modifyOutputBeforeCompile, UnityEditor.RuntimeClassRegistry runtimeClassRegistry) (at /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/Il2Cpp/IL2CPPUtils.cs:42) DesktopStandalonePostProcessor.SetupStagingArea (UnityEditor.Modules.BuildPostProcessArgs args, System.Collections.Generic.HashSet1[T] filesToNotOverwrite)(在 /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/DesktopStandalonePostProcessor.cs :245) DesktopStandalonePostProcessor.PostProcess(UnityEditor.Modules.BuildPostProcessArgs 参数)(在 /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/DesktopStandalonePostProcessor.cs:46) UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

  • [2]

    UnityEditor.BuildPlayerWindow+BuildMethodException: 2 个错误 在 UnityEditor.BuildPlayerWindow+DefaultBuildMethods.BuildPlayer(UnityEditor.BuildPlayerOptions 选项)[0x00234] 在 /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:190 在 UnityEditor.BuildPlayerWindow.CallBuildMethods (System.Boolean askForBuildLocation, UnityEditor.BuildOptions defaultBuildOptions) [0x0007f] 在 /Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:96 UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

感谢您的帮助。

【问题讨论】:

  • 尝试删除 Unity 项目中的 Temp 和 Library 文件夹,然后重新构建它。
  • @JeanLuc 感谢您的评论,但这也没有用。我曾怀疑这可能是问题所在。但是我发布的错误是在删除临时文件夹后发生的。注意:我在从 git 中提取项目后尝试重新构建,并在删除该文件夹并重新启动 Unity 后尝试重新构建。两种情况,同样的问题。
  • 我阅读了许多其他帮助提示;弄乱了终端,用户权限,root访问权限,但没有任何效果。我什至完全格式化了我的驱动器,安装了一个全新的 Mojave (Mac OS) 副本,再次安装了 Unity,创建了一个全新的项目,场景中只有一个立方体。我运行了它,构建了它,并且成功了。然后从 git 中拉出我的项目,运行它,同样的错误。这个项目在其他系统上运行和构建,但不是我的 Mac OS。难道它最初是通过 Windows 操作系统编码和设置的吗?这有关系吗?

标签: c# macos unity3d build


【解决方案1】:

如果有人在 Mac 上构建 Unity3D 项目时遇到问题,我可能已经为我的问题找到了可以帮助其他人的解决方案。

两件事,其中一件可能是它的原因。

1) 我基本上在 Unity 中运行包管理器,并删除了最初通过 Windows 版本的 Unity3D(适用于 Android)添加的所有包。我对这部分了解不多,但确实有效。

2) 您需要从 AppStore 下载并安装最新的 Xcode,使用模板项目运行它(使其运行和启动的东西);这样它就可以下载任何依赖项或所需的文件。然后,关闭项目,重新启动计算机,然后返回;运行您的 Unity3D 项目并再次尝试构建。

这基本上为我解决了这个问题,因为项目中的某些文件需要一些“访问权限”,如果没有安装 Xcode,这些文件是不可能的;我认为,这允许这些事情发生。

我希望这对其他人有所帮助。 祝你好运。

【讨论】:

    猜你喜欢
    • 2020-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多