我正在使用具有C#支持(单声道)的Godot构建应用程序。
在Visual Studio中构建解决方案工作正常,没有错误。但是,尝试使用Godot构建应用程序会引发异常:
C:\Program Files\Mono\lib\mono\msbuild\15.0\bin\Microsoft.Common.CurrentVersion.targets(2130,5): error MSB4018: The "ResolveAssemblyReference" task failed unexpectedly.
System.DllNotFoundException: fusion.dll
at (wrapper managed-to-native) Microsoft.Build.Tasks.NativeMethods.CompareAssemblyIdentityWindows(string,bool,string,bool,bool&,Microsoft.Build.Tasks.NativeMethods/AssemblyComparisonResult&)
at Microsoft.Build.Tasks.NativeMethods.CompareAssemblyIdentity (System.String assemblyIdentity1, System.Boolean fUnified1, System.String assemblyIdentity2, System.Boolean fUnified2, System.Boolean& pfEquivalent, Microsoft.Build.Tasks.NativeMethods+AssemblyComparisonResult& pResult) [0x00007] in <050f973d2a7f41969411264f5f4b2cfa>:0
at Microsoft.Build.Tasks.ReferenceTable.ResolveAssemblyNameConflict (Microsoft.Build.Tasks.AssemblyNameReference assemblyReference0, Microsoft.Build.Tasks.AssemblyNameReference assemblyReference1) [0x000c4] in <050f973d2a7f41969411264f5f4b2cfa>:0
at Microsoft.Build.Tasks.ReferenceTable.ResolveConflictsBetweenReferences () [0x0003a] in <050f973d2a7f41969411264f5f4b2cfa>:0
at Microsoft.Build.Tasks.ReferenceTable.ResolveConflicts (System.Collections.Generic.List`1[Microsoft.Build.Tasks.DependentAssembly]& idealRemappings, System.Collections.Generic.List`1[Microsoft.Build.Tasks.AssemblyNameReference]& conflictingReferences) [0x00006] in <050f973d2a7f41969411264f5f4b2cfa>:0
at Microsoft.Build.Tasks.ResolveAssemblyReference.Execute (Microsoft.Build.Shared.FileExists fileExists, Microsoft.Build.Shared.DirectoryExists directoryExists, Microsoft.Build.Tasks.GetDirectories getDirectories, Microsoft.Build.Tasks.GetAssemblyName getAssemblyName, Microsoft.Build.Tasks.GetAssemblyMetadata getAssemblyMetadata, Microsoft.Build.Shared.GetRegistrySubKeyNames getRegistrySubKeyNames, Microsoft.Build.Shared.GetRegistrySubKeyDefaultValue getRegistrySubKeyDefaultValue, Microsoft.Build.Tasks.GetLastWriteTime getLastWriteTime, Microsoft.Build.Tasks.GetAssemblyRuntimeVersion getRuntimeVersion, Microsoft.Build.Shared.OpenBaseKey openBaseKey, Microsoft.Build.Tasks.GetAssemblyPathInGac getAssemblyPathInGac, Microsoft.Build.Tasks.IsWinMDFile isWinMDFile, Microsoft.Build.Tasks.ReadMachineTypeFromPEHeader readMachineTypeFromPEHeader) [0x00578] in <050f973d2a7f41969411264f5f4b2cfa>:0
at Microsoft.Build.Tasks.ResolveAssemblyReference.Execute () [0x00000] in <050f973d2a7f41969411264f5f4b2cfa>:0
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute () [0x00029] in <7dd0c229019940a39d4282a335b99b6f>:0
at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask (Microsoft.Build.BackEnd.ITaskExecutionHost taskExecutionHost, Microsoft.Build.BackEnd.Logging.TaskLoggingContext taskLoggingContext, Microsoft.Build.BackEnd.TaskHost taskHost, Microsoft.Build.BackEnd.ItemBucket bucket, Microsoft.Build.BackEnd.TaskExecutionMode howToExecuteTask) [0x001f6] in <7dd0c229019940a39d4282a335b99b6f>:0 [D:\wrkfldr\godot-project\BoomCraft.csproj]
显然找不到fusion.dll
。我已经在网上找到了dll文件,但不知道将文件放在哪里,因此Mono可以看到它。我尝试在Visual Studio中引用它,但它引发了另一个错误
Please make sure it is a valid assembly or COM component
This thread无关,因为它与Azure API紧密链接,并且我不在项目中使用该API。
如何追溯Mono需要存储文件的位置?