Hololens 构建失败 - 命令 AssemblyConverter.exe 以代码 1 退出

Posted

技术标签:

【中文标题】Hololens 构建失败 - 命令 AssemblyConverter.exe 以代码 1 退出【英文标题】:Hololens Build Failing - The command AssemblyConverter.exe exited with code 1 【发布时间】:2017-08-25 08:54:17 【问题描述】:

更新到最新版本的 VS 2017(版本 15.3.2)后,我从 Unity 生成的 Hololens 构建始终失败并显示以下消息:

命令 ""C:\TestFile\HoloBuild\VSApp\Unity\Tools\AssemblyConverter.exe" -platform=uap -lock="C:\TestFile\HoloBuild\VSApp\HoloBuild\project.lock.json" - bits=32 -configuration=Debug -removeDebuggableAttribute=False -uwpsdk=10.0.15063.0 -path="." -path="C:\Program Files\Unity\Editor\Data\PlaybackEngines\MetroSupport\Players\UAP\dotnet\x86 \Debug" "C:\TestFile\HoloBuild\VSApp\HoloBuild\Assembly-CSharp.dll" "C:\TestFile\HoloBuild\VSApp\HoloBuild\UnityEngine.dll" "C:\TestFile\HoloBuild\VSApp\HoloBuild\UnityEngine .Analytics.dll" "C:\TestFile\HoloBuild\VSApp\HoloBuild\nunit.framework.dll" "C:\TestFile\HoloBuild\VSApp\HoloBuild\UnityEngine.UI.dll" "C:\TestFile\HoloBuild\VSApp \HoloBuild\UnityEngine.HoloLens.dll" "C:\TestFile\HoloBuild\VSApp\HoloBuild\UnityEngine.Networking.dll" "C:\TestFile\HoloBuild\VSApp\HoloBuild\UnityEngine.VR.dll"" 退出代码 1 . HoloBuild C:\TestFile\HoloBuild\VSApp\HoloBuild\HoloBuild.csproj 292

我在构建输出中有这个错误:

1> System.Collections.Generic.KeyNotFoundException:字典中不存在给定的键。 (任务 ID:275)

1> 在 System.Collections.Generic.Dictionary`2.get_Item(TKey key) (TaskId:275)

1> 在 UnityEditor.Scripting.Compilers.NuGetPackageResolver.Resolve() (TaskId:275)

1> 在 Unity.UWPAssemblyResolver..ctor(String projectLockFile, String desiredUWPSDKVersion) (TaskId:275)

1> 在 Unity.OperationContext.SetPlatform(Platform platform, String projectLockFile, String uwpSDK) (TaskId:275)

1> 在 Unity.ParseArgsStep.Execute() (TaskId:275)

1> 在 Unity.Step.Execute(OperationContext operationContext, IStepContext previousStepContext) (TaskId:275)

1> 在 Unity.Operation.Execute() (TaskId:275)

1> 在 Unity.Program.Main(String[] args) (TaskId:275)

我尝试了许多新项目,但结果相同,错误消息相同。

按照某些线程中的建议,我尝试删除并添加回一些引用,尝试在 Unity 中弄乱一些构建设置。

我完全不确定这个问题是因为更新了 Visual Studio。 有没有人遇到过同样的问题? 我怎样才能构建我的项目?

【问题讨论】:

错误“The command [...] exited with code 1.”是一般错误。它基本上只是在说“编译器无法编译项目”。巨大的文本块实际上只是传递给编译器的参数,没有任何帮助。其余部分(以“KeyNotFoundException”开头)表明您的安装有问题。可能是 Unity 2017 无法进行 HoloLens 编译,也可能是包安装不正确,我不确定。 【参考方案1】:

此问题与 Unity 中的一个错误有关,该错误使其无法与 Visual Studio 2017 (15.3) 一起使用。这里有一些关于它的链接。我相信您可以安装 Unity 补丁,但我找到的最简单的解决方案是将 Visual Studio 降级到 2015 版本。如果您可以访问 Visual Studio 2017 (15.2) 也可以。

以下是相关链接:

    https://forum.unity3d.com/threads/net-scripting-backend-and-visual-studio-2017-3-incompatibility.487833/

    https://forum.unity3d.com/threads/build-error-assembly-csharp-dll-could-not-be-found-hololens.458493/

希望这会有所帮助!

【讨论】:

【参考方案2】:

我面临同样的问题,3 天后无法解决,我使用了 Unity 5.6.1f1、Unity 5.6.2f1、Unity 2017.1.0f3 和 Unity 2017.1.0p3 以及新的 Unity 2017.2.0b10(64 位)。我已经多次删除并重建了 .sln 文件,甚至从头开始创建了多个项目。问题仍然存在。

我已经查看了此处的线程/解决方案以及其他论坛并尝试了这些,但问题仍然存在。一件事是肯定我没有做正确的设置或有什么地方很不对劲,因为我已经重新安装了 Unity、Visual Studio。

最后它可以与 VS 2015 SP3 和 Windows SDK 10.0.14393 一起使用 https://forum.unity3d.com/threads/build-error-assembly-csharp-firstpass-dll-could-not-be-found-hololens.488357/

【讨论】:

以上是关于Hololens 构建失败 - 命令 AssemblyConverter.exe 以代码 1 退出的主要内容,如果未能解决你的问题,请参考以下文章

微软Hololens遭遇失败,前途何在?

Unity Hololens (UWP) 构建会产生独立构建不会产生的错误?

HoloLens开发手记 - 构建2D应用 Building 2D apps

在 Hololens 中禁用一般语音命令

hololens 2 和计算机上的统一应用程序之间的 TCP 连接只能工作一次

[吃药HoloLens开发随笔] 构建并发布来使用Visual Studio开发