我已经构建了一个UWP应用程序,直到最近一直在工作。尽管最近我在为Release编译时遇到错误。
Payload contains two or more files with the same destination path 'System.Runtime.CompilerServices.Unsafe.dll'. Source files:
C:\Users\Cj\.nuget\packages\runtime.win10-x64-aot.microsoft.netcore.universalwindowsplatform\6.2.0-preview1-26926-04\runtimes\win10-x64-aot\lib\uap10.0.15138\System.Runtime.CompilerServices.Unsafe.dll
C:\Users\Cj\.nuget\packages\system.runtime.compilerservices.unsafe\4.5.1\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll
这种异常是不言而喻的,除了我不知道哪个程序包正在调用该文件,或者不知道如何解决该问题。我找到了不适合我的情况的不同库的答案。另一个在构建属性中显示“取消选中“使用.NET Native编译工具链””,但是在为商店构建时,不会生成.appxupload捆绑包。
这些是已安装的软件包(https://imgur.com/a/KaUqdIw)
我已经更新了所有这些软件包,除了
感谢您的帮助。 谢谢
编辑-附加信息
我还应该声明应用程序还引用了一个.Net Core DLL。
答案 0 :(得分:1)
我相信我已经找到了导致异常的NuGet软件包。看来是Microsoft.NETCore.UniversalWindowsPlatform包。
当程序包更新到6.2.0预览版本时,会发生异常。当降级到最新的稳定版本6.1.9时,该异常不再发生/更改。
但是,在为x86构建时,出现了新的异常,
ILT0005: 'C:\Program Files (x86)\Microsoft SDKs\UWPNuGetPackages\runtime.win10-x86.microsoft.net.native.compiler\2.1.8\tools\x86\ilc\Tools\nutc_driver.exe @"C:\Users\Cj\Documents\Project\GoMobile\Main Branch\GoMobile\GoMobile\GoMobile.UWP\obj\x86\Release\ilc\intermediate\MDIL\GoMobile.rsp"' returned exit code -1073740791
我不知道是什么导致了新错误。定位x64时,软件包可以构建。
答案 1 :(得分:1)
将system.runtime.compilerservices.unsafe软件包参考升级到4.5.2也可以解决此问题,同时让您继续使用最新的Universalwindowsplatform软件包。
答案 2 :(得分:0)
我在升级到运行最新VS2017 15.9.1的最新版本的Microsoft.NETCore.UniversalWindowsPlatform 6.2.2时看到相同的错误消息
有效负载包含两个或多个文件,这些文件具有相同的目标路径“ System.Runtime.CompilerServices.Unsafe.dll”。源文件: C:\ Program Files(x86)\ Microsoft SDKs \ UWPNuGetPackages \ runtime.win10-x86-aot.microsoft.netcore.universalwindowsplatform \ 6.2.2 \ runtimes \ win10-x86-aot \ lib \ uap10.0.15138 \ System.Runtime。 CompilerServices.Unsafe.dll C:\ Users \ JM.nuget \ packages \ system.runtime.compilerservices.unsafe \ 4.5.1 \ lib \ netstandard2.0 \ System.Runtime.CompilerServices.Unsafe.dll
绝对是最新的通用软件包的问题。