1

JSON.NET ライブラリを使用する MonoMac アプリをビルドしようとしていますが、アプリ インストーラーを生成しようとすると、次のエラーが表示されます。

Merging Mono into app bundle
    /Applications/Development/MonoDevelop.app/Contents/MacOS/lib/monodevelop/AddIns/MonoDevelop.MonoMac/mmp -o "/tmp/monomac-build-634732855752481110" -n "OfficeDropSync" -a  "/Users/mauricio/projects/mono/winclient/ODWSyncApplication/OfficeDrop.Sync.Business/bin/Release/OfficeDrop.Sync.Business.dll" -a "/Users/mauricio/projects/mono/winclient/ODWSyncApplication/OfficeDrop.Sync.Common/bin/Release/OfficeDrop.Sync.Common.dll" -a "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/4.0/System.dll" -a "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/4.0/System.Xml.dll" -a "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/4.0/System.Core.dll" -a "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/4.0/System.Xml.Linq.dll" -a "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/4.0/System.Drawing.dll" -a "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/4.0/Mono.Data.Sqlite.dll" -a "/Users/mauricio/projects/mono/winclient/thirdparty/log4net.dll" -a "/Users/mauricio/projects/mono/winclient/thirdparty/monomac/src/MonoMac.dll" "/Users/mauricio/projects/mono/winclient/ODWSyncApplication/OfficeDrop.Sync.Mac/bin/Release/OfficeDropSync.exe"
Could not link assemblies: Mono.Cecil.ResolutionException: Failed to resolve System.Void Newtonsoft.Json.JsonObjectAttribute::.ctor(Newtonsoft.Json.MemberSerialization)
  at Mono.Linker.Steps.MarkStep.MarkMethod (Mono.Cecil.MethodReference reference) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkCustomAttribute (Mono.Cecil.CustomAttribute ca) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkCustomAttributes (ICustomAttributeProvider provider) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkType (Mono.Cecil.TypeReference reference) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkType (Mono.Cecil.TypeReference reference) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkField (Mono.Cecil.FieldReference reference) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkFields (Mono.Cecil.TypeDefinition type) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.ApplyPreserveInfo (Mono.Cecil.TypeDefinition type) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.MarkType (Mono.Cecil.TypeReference reference) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.InitializeType (Mono.Cecil.TypeDefinition type) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.InitializeAssembly (Mono.Cecil.AssemblyDefinition assembly) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.Linker.Steps.MarkStep.Process (Mono.Linker.LinkContext context) [0x00000] in <filename unknown>:0 
  at Mono.Linker.Pipeline.Process (Mono.Linker.LinkContext context) [0x00000] in <filename unknown>:0 
  at MonoMac.Tuner.Linker.Run (Mono.Linker.Pipeline pipeline, Mono.Linker.LinkContext context) [0x00000] in <filename unknown>:0 Failed to link /Users/mauricio/projects/mono/winclient/ODWSyncApplication/OfficeDrop.Sync.Mac/bin/Release/OfficeDropSync.exe

mmp exited with code 1

誰もこれを見たことがありますか?この問題を回避する方法はありますか?

4

1 に答える 1

1

誰かがこれを見たことがありますか?

はい。これは、シンボルを解決できない場合に発生します。

あなたの場合、コマンドラインにはjsonアセンブリへの直接mmp参照がないようです。ただし、一部のアセンブリにはそれへの参照があります。後で処理するとき、およびリゾルバーが参照されているアセンブリを見つけることができないときに発生します。ResolutionExceptionmmp

この問題を回避する方法はありますか?

アセンブリへの参照を手動で追加するか(アセンブリが含まれることを確認します)、またはアセンブリ(欠落しているjsonライブラリ)がで見つかることを確認しmmpます。

于 2012-05-22T17:58:30.073 に答える