2016-10-02 6 views
0

Es tut mir leid für eine noob Frage, aber ich versuche, Json.NET von v8.0.3 zu v9.0.1 auf meiner Xamarin-Anwendung zu aktualisieren, um die Abhängigkeiten eines anderen Pakets zu erfüllen. NuGet sagt, dass es einige .NETStandard Abhängigkeiten:Schwierigkeiten mit der Aktualisierung Json.NET

enter image description here

Wenn ich mit der Installation fortfahren, fügt sie als separate Pakete und einige Consider app.config remapping of assembly Warnungen erscheinen, die ich keine Fähigkeit haben, zu beheben ...

Kann ich Json.NET auf v9.0.1 aktualisieren, ohne System.* Abhängigkeiten als Pakete zu installieren (ich mache mir Sorgen über die Größe meiner App)? Wenn nicht, was soll ich mit diesen Warnungen tun?

Antwort

0

Ich fand eine Lösung. Scheint, als ob dies ein bekannter Fehler ist: https://bugzilla.xamarin.com/show_bug.cgi?id=22670

Die Ursache ist in "C: \ Program Files (x86) \ MSBuild \ Xamarin \ Android \ Xamarin.Android.Common.targets", Ziel _ResolveSatellitePaths .

<Target Name="_ResolveSatellitePaths" 
    DependsOnTargets="_ResolveAssemblies" 
> 
    <ResolveAssemblyReference 
     AllowedAssemblyExtensions="$(AllowedReferenceAssemblyFileExtensions)" 
     AssemblyFiles="@(ResolvedUserAssemblies)" 
     FindDependencies="True" 
     FindRelatedFiles="False" 
     FindSatellites="True" 
     SearchPaths="$(AssemblySearchPaths)" 
     TargetFrameworkMoniker="$(TargetFrameworkMoniker)" 
     TargetFrameworkMonikerDisplayName="$(TargetFrameworkMonikerDisplayName)" 
     TargetFrameworkDirectories="$(TargetFrameworkDirectory)"> 
    <Output TaskParameter="SatelliteFiles" ItemName="_AndroidResolvedSatellitePaths"/> 
    </ResolveAssemblyReference> 

Der Aufruf zu ResolveAssemblyReference erhalten keine app.config (es sollten, wenn Sie ein in das Projekt haben) oder nicht erhalten AutoUnify = "true" (es sollte, wenn es wird berechnet zB von AutoUnifyAssemblyReferences).

Wenn ich es hacke und AutoUnify = true zu dieser .targets-Datei hinzufüge, sind die Warnungen weg.

Dies scheint wie etwas, das repariert werden muss, in Xamarin.Android.Common.targets.