2017-06-07 2 views
4

Ich versuche Team Services CI-Build zu verwenden, aber es hält mit dem gleichen Fehler auf Fehler:Visual Studio Team Services Build ist nicht in der Lage, eine Bibliothek zu finden

##[error]MobileClient\LoginNavigation\CommentPage.xaml.cs(1,7): Error CS0246: The type or namespace name 'Android' could not be found (are you missing a using directive or an assembly reference?) 

Welches Recht zu sein scheint, da in ein vorhergehender Schritt es beschwert sich über nicht, dass die Bibliothek zu finden:

##[warning]C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Common.CurrentVersion.targets(1820,5): Warning MSB3245: Could not resolve this reference. Could not locate the assembly "Mono.Android". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. 

auch es wird protokolliert, wo auch der Bau es die Suche:

For SearchPath "{HintPathFromItem}". 
Considered "..\..\..\..\..\..\..\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\Mono.Android.dll", but it d idn't exist.For SearchPath "{TargetFrameworkDirectory}". 
For SearchPath "{TargetFrameworkDirectory}". 
Considered "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile259\Mono.Android.winmd", but it didn't exist. 
Considered "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile259\Mono.Android.dll", but it didn't exist. 
Considered "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETPortable\v4.5\Profile\Profile259\Mono.Android.exe", but it didn't exist. 
For SearchPath "{RawFileName}". 
Considered treating "Mono.Android" as a file name, but it didn't exist. 

Nach meinem Verständnis fehlt diese Datei im Build Server für Team Services, richtig? Wie könnte ich das lösen? Sollte es notwendig sein, dieses Verzeichnis zu ändern?

Eine wichtige Sache ist, dass lokal in meinem Computer das Visual Studio und die Befehlszeile MSBuild ordnungsgemäß funktionieren.

Dies geschieht während der Visual Studio-Build-Schritt, der die folgende Konfiguration hat:

  • MSBuild Konfiguration: MSBuild x86
  • Visual Studio Version: Visual Studio 2015
  • MSBuild Argumente:/p: DeployOnBuild = true/p: WebPublishMethod = Paket
  • /p: PackageAsSingleFile = true/p: SkipInvalidConfigurations = true
  • /p: Package = "$ (build.artifactstagingdirectory) \"
  • Visual Studio Build-Lösung Schritt Version: 1. *

Hier sind die Schritte des Team Services bauen: enter image description here

+0

Können Sie dieses Problem mit einem einfachen Projekt reproduzieren? Sie können es auf dem OneDrive freigeben –

+1

Da Sie eine Xamarin-Lösung haben, würde ich diese Veröffentlichungsargumente nicht empfehlen. Haben Sie versucht, Xamarin Android Vorlage zu verwenden? –

+1

Was ist der Weg von Mono.Android Referenz? (Rechtsklick Mono.Android Referenz> Eigenschaften) –

Antwort

1

Ok so nach Antworten und Anregungen zu lesen Ich erhielt, ich bekam einen Hinweis darauf, was ich tun musste, um das zu lösen. Im Grunde machte ich zwei Fehler:

Zunächst einmal, auf das Projekt, das fehlschlug, änderte ich die Mono.Android Referenz auf eine im Ordner des Projekts. Obwohl dieser Fehler verschwand, hatte ich immer mehr Fehler in Bezug auf Xamarin und Android.

Das war, als ich einen anderen Vorschlag in diesem Thread folgte: Verwenden einer Xamarin.Android Vorlage. Die Sache ist, dass ich in diesem Projekt eine .sln-Datei habe, die verschiedene Arten von Projekten enthält, einschließlich eines Xamarin-Projekts, einer Web-API und einiger Klassenbibliotheken. Ich habe versucht, sie alle in derselben Build-Definition von Team Services zu erstellen, aber ich erkannte, dass es viel effizienter war, unterschiedliche Definitionen für die verschiedenen Arten von Projekten zu verwenden.

Folglich ich am Ende eine Builddefinition mit für das Xamarin Projekt, die Xamarin.Android Vorlage, und eine anderer für eine SLN-Datei, die ich mit allen Projekten, die von dem Web-Api Projekt verwendet erstellt. Die Anzahl der Fehler wurde drastisch reduziert und ich fühlte, dass ich nicht mehr gegen den Strom schwimmen würde.

Ich würde vorschlagen, jeder hat eine Lösung mit einer Vielzahl von Projekttypen, um das gleiche zu tun.

Verwandte Themen