NuGet wiederherstellen PostSharp-Paket, bevor das bauen beginnt

Ich bin mit PostSharp und habe ich die folgende Ziel-Beschreibung in meiner Projekt-Datei:

<Target Name="EnsurePostSharpImported" BeforeTargets="BeforeBuild" Condition="'$(PostSharp30Imported)' == ''">
  <Error Condition="!Exists('..\..\packages\PostSharp.3.1.33\tools\PostSharp.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://www.postsharp.net/links/nuget-restore." />
  <Error Condition="Exists('..\..\packages\PostSharp.3.1.33\tools\PostSharp.targets')" Text="The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://www.postsharp.net/links/nuget-restore." />
</Target>

Soweit ich das verstanden habe, wird dieser dem Projekt Hinzugefügt wird, wenn PostSharp verwiesen wird über NuGet, und den Fehler überprüfen Sie die folgenden Bedingungen:

  • Die ersten Fehler bricht der build, bei PostSharp ist nicht verfügbar (z.B. NuGet hat es nicht wiederherstellen erfolgreich).
  • Die zweite Fehlerbedingung bricht der build, bei PostSharp wurde erfolgreich wiederhergestellt von NuGet auf der letzten build war aber deshalb nicht im Projekt enthalten ist, so deshalb ein Neubau notwendig ist.

ABER, wenn ich die folgende Konfiguration in NuGet.Config und .csproj file, ist der zweite Fehler-Bedingung auch notwendig?

NuGet.Config Datei:

<configuration>
  <packageRestore>
    <!-- Allow NuGet to download missing packages -->
    <add key="enabled" value="True" />
    <!-- Automatically check for missing packages during build in Visual Studio -->
    <add key="automatic" value="True" />
  </packageRestore>
  ...
</configuration>

.csproj Datei:

<RestorePackages>true</RestorePackages>

Soweit ich das verstanden habe, NuGet wird dann wieder die fehlenden Pakete, BEVOR der Erstellungsprozess beginnt. Die zweite Fehlerbedingung wird im wesentlichen brechen die bauen für überhaupt keinen Grund.

Hinweis: ich verwende Visual Studio 2013 und NuGet-2.8.

InformationsquelleAutor Dave New | 2014-05-09
Schreibe einen Kommentar