2016-05-06 14 views
4

Ich habe eine UWP-Anwendung mit Sqlite erstellen. Auf meinem lokalen Rechner musste ich die folgende Visual Studio Extension SQLite for Universal Windows Platform installieren, um es zu erstellen. Ich folgte this blog bei der Verwendung von sqlite auf UWPKonnte SDK SQLite.UWP.2015 beim Erstellen der UWP-Anwendung mit Hosted TFS-Pool nicht finden

Ich versuche jetzt Continuous Integration mit Visual Studio Team Services zu implementieren (war Team Foundation Server Online).

ich einen Hosted Pool bin mit meiner Anwendung zu bauen, aber ich bekomme die folgende Meldung:

C: \ Program Files (x86) \ MSBuild \ 14.0 \ bin \ Microsoft.Common.CurrentVersion.targets (2049,5): Fehler MSB3774: Konnte SDK "SQLite.UWP.2015, Version = 3.12.2" nicht finden.

und es bricht den Build.

Wie kann ich dies in einem gehosteten Pool beheben? Ich habe keinen physischen Zugriff auf das Gerät, da dies von TFS online verwaltet wird

EDIT:

Danach findet, ist eine Bibliothek, die (über die Visual Studio-Erweiterung) auf meinem lokalen Rechner installiert ist und so existiert nicht auf meiner gehosteten Maschine, was bedeutet, dass die Referenz fehlerhaft ist. Ich versuche, die entsprechenden Dateien der Quellcodeverwaltung hinzuzufügen und sie direkt aus der Quellcodeverwaltung zu referenzieren. Aber ich habe keine Ahnung, was es eigentlich referenziert, wie es nicht sagt. Die Eigenschaften der Referenz sind wie folgt:

enter image description here

+0

So fand ich heraus, dass durch die Installation der Erweiterung und Referenzierung es in C: \ Programme (x86) \ Microsoft SDKs \ UAP \ v0.8.0.0 \ ExtensionSDKs \ SQLite.UWP.2015 referenziert wird offensichtlich nicht auf dem Host-Rechner. Ich weiß nicht, welche DLL es sucht, und wie man das als Teil des Projekts – user1

Antwort

0

Es gibt keinen Weg, um die Erweiterung auf Hosted Build-Agenten zu installieren.

F: Ist Ihr Build abhängig von anderer Software als dieser Software, die auf gehosteten Build-Ressourcen installiert ist?

A: Nein. Dann können Sie den gehosteten Pool verwenden.

Hier ist die auf Hosted Build Agent installierte Software: Software on the hosted build server.

Die Arbeit ist deploy your own build agent. Mit diesem Build-Agent können Sie die Software installieren, mit der Sie Ihr Projekt erstellen möchten.

+0

bekommen habe Ich landete meinen eigenen Build-Agent, wie es mir mehr Kontrolle gibt und ich kann die Erweiterung auf meinem eigenen Build-Agent installieren – user1

+0

Wir suchen Erlauben der Admin-Funktionalität während des Builds, da Sie die Maschine für diesen Leasing-Zeitraum besitzen. – bryanmac

+1

Noch keine SQLite für UWP auf Hosted Machines .. Komm Microsoft, zieh deinen Finger raus! – user1

0

Sie keine zusätzliche Erweiterung in einer gehosteten VSTS installieren kann. Ich habe versucht, mit TS-Unterstützung und es gibt keine Möglichkeit, es jetzt zu tun.

Sie können CI-Dienste wie Appveyor verwenden, um Ihnen die Kontrolle über die Installation von Erweiterungen über Powershell zu geben.

Oder Sie können warten Windows 10 Anniversary with include Sqlite.

3

Eigentlich ist es eine einfache Lösung, die perfekt für uns gearbeitet hat:

Kopieren Sie die Microsoft SDKs Ordner auf Ihrem Repo (oder Modul).

bis zum Ende Ihrer csproj Datei Fügen Sie diese:

<PropertyGroup> 
    <SDKReferenceDirectoryRoot>$(MSBuildProjectDirectory)\..\..\..\..\Microsoft SDKs;$(SDKReferenceDirectoryRoot)</SDKReferenceDirectoryRoot> 
</PropertyGroup> 

Von nun an dem Build-Prozess wird zunächst für die erforderlichen Erweiterungen dieses Verzeichnis überprüfen und dann zu den lokal installierten Erweiterungen Rückfall. Dies funktioniert perfekt auf VSTS-gehosteten Agenten und erfordert nicht, dass Sie alle Erweiterungen auf jedem Dev-Rechner installieren.

+1

Natürlich müssen Sie nur die von Ihnen verwendeten Erweiterungen und Versionen kopieren, aber sie müssen dieselbe Ordnerstruktur haben, wie UAP \ v0.8.0.0 \ ExtensionSDKs \ ... –

+0

Danke: Dieser Tipp hat viel Zeit gespart! –