it-swarm.com.de

Fehler CS1703: Mehrere Baugruppen mit entsprechender Identität wurden importiert - Xamarin + VSTS

Ich habe ein Upgrade auf das neueste Xamarin für Visual Studio 2015 (Community Edition) durchgeführt, meine Projekte erneut kompiliert, ein paar kleine Codeänderungen eingecheckt und mein VSTS-Build-Server schlägt mit dieser Fehlermeldung fehl:

[Fehler] CSC (0,0): Fehler CS1703: Mehrere Assemblys mit äquivalentem Die Identität wurde importiert: 'C:\Programme (x86)\Referenz Assemblies\Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll 'und "C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll". Löschen eine der doppelten Referenzen.

Internet-Suchen geben im Allgemeinen fast keine Details zu diesem Problem und keine wertvollen Informationen im Zusammenhang mit VSTS und Xamarin wieder.

Die einzige Codeänderung, die ich für relevant halte, wurde von Visual Studio in der Projektdatei vorgenommen:

 enter image description here

Ich entwickle nur für Android, bin auf Xamarin 4.2 und verwende den JDK 8 u101.

Irgendeine Idee, wie man dieses Problem löst?

17

Ich habe das Problem gerade gelöst. Entfernen Sie die Datei mscorlib.dll aus dem Verweisordner in Ihrer Projektmappe. Siehe den unten hervorgehobenen Ordner (Referenzordner). Es scheint, dass Xamarin die mscorlib.dll standardmäßig während des Builds einbezieht. Ich hoffe es hilft :)

 enter image description here

34
DriLLFreAK100

Die folgende Änderung an .csproj Hat den Trick bewirkt:

   <PackageReference Include="System.Reflection.Emit">
      <Version>4.3.0</Version>
      <ExcludeAssets>All</ExcludeAssets>
      <IncludeAssets>none</IncludeAssets>
    </PackageReference>
4
Jasper H Bojsen

Bei der Installation eines .net-Kern-Nugets ist ein Fehler aufgetreten, der alle System. * - Bibliotheken explizit installiert. Es stellte sich heraus, dass mein Microsoft.Net.Compilers-Paket aktualisiert werden musste, dann ging dieser Fehler weg.

4
David Faivre

Ich habe das Problem behoben, indem ich 7.1 wieder auf 6.0 zurückgestellt habe und die Kompilierung wieder funktionierte. Das Problem erscheint nur auf meinem Kompilierungsagenten:

Compilation settings

1
Adrián Romero

In meinem Fall hatte ich in einem der referenzierten Projekte eine Paketreferenz "Microsoft.NETCore.Portable.Compatibility". Ich habe es entfernt und Android- und iOS-Projekte erfolgreich erstellt.

1
Adil H. Raza

Ich habe alle Microsoft-Pakete aktualisiert, und der Compiler-Fehler ist verschwunden. Daher glaube ich, dass die allgemeine Lösung für diese Art von Compiler-Fehlern in zwei Schritten besteht:

  1. Aktualisieren Sie das betroffene NuGet-Paket.
  2. Wenn der erste Schritt nicht ausreicht , aktualisieren Sie alle Microsoft NuGet-Pakete.
0
Ovidiu Caba

Ich hatte ein ähnliches Problem.

der folgende Fehler war in der Ausgabe der Jenkins-Konsole enthalten

Multiple assemblies with equivalent identity have been imported: 'C:\Program Files (x86)\Jenkins\jobs\...\lib\net461\System.ComponentModel.Annotations.dll' and 'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\Facades\System.ComponentModel.Annotations.dll'. 
Remove one of the duplicate references.

Ich habe die doppelte Referenz in einem meiner Projekte entfernt und es hat funktioniert.

0
hormberg