2016-07-06 12 views
1

Ich versuche dotnet pack zu verwenden NuGet Paket und kopieren Sie sie in den NuGet Pakete, die in Visual Studio als NuGet Quellordner zu erstellen. Vor dotnet verwendete ich dnu pack für NuGet Erstellen von Paketen. Dieser Befehl erstellt Ordner mit Projektversion mit lib Ordnern, .nuspec, .nupkg und .nupkg.sha512 Dateien.Dotnet Pack ouput und lokale Paketquelle Visual Studio

Wenn dotnet eingeführt wurde, habe ich es migriert und nach dem Packen habe ich nur zwei Dateien, .nupkg und .symbols.nupkg. Wenn ich es in einen Ordner kopiere, der in Visual Studio als NuGet-Quelle verwendet wird, werden sie nicht erkannt.

Was fehlt mir? Ich verwende derzeit die Version 1.0.0-preview3-003171 von .NET Core.

Antwort

0

Hier ist, wie ich Pakete lokal in meiner Entwicklungsumgebung behandeln:

Schritt 1: eine lokale NuGet Quelle einrichten. Sie benötigen eine Kopie des NuGet CLI, wenn Sie nicht bereits haben. Folgen Sie den Anweisungen auf creating a local NuGet feed: im Grunde, einen leeren Ordner erstellen. Ich wählte C:\Users\Nate\Documents\LocalNuget.

Schritt 2: Fügen Sie der lokalen Quelle Pakete mit nuget add [file] -source [folder] hinzu. Ich fügte hinzu, rief eine Umgebungsvariable local_nuget_path, die in die Ordnern darauf, so würde ich ihm nicht die ganze Zeit geben muß:

> setx local_nuget_path "C:\Users\<you>\Documents\LocalNuget" 

Für noch mehr Komfort, schrieb ich ein einfaches Powershell-Cmdlets Pakete automatisch hinzuzufügen:

nuget-functions.ps1

Function Nuget-AddLocal { 
    Param([string]$file) 
    nuget add $file -Source $env:local_nuget_path 
} 

Function Nuget-AddAllLocal { 
    Param([string]$path) 

    Get-ChildItem $path -Recurse -Filter *.nupkg | ` 
    Foreach-Object { 
    Nuget-AddLocal $_.FullName 
    } 
} 

in diesem Profil, um Ihre Powershell, so dass es in jedem Konsolenfenster verfügbar:

> notepad $profile 

folgende Zeile in profile.ps1 (den wirklichen Pfad der Datei ersetzt wird):

. C:\Users\<you>\Documents\nuget-functions.ps1 

Schritt 3: Fügen Sie die lokale Quelle zu NuGet als Feed.

> nuget sources add -Name Local -Source $env:local_nuget_path 

Schritt 4: Profit!

Pakete produzieren und fügen Sie sie in zwei einfachen Schritten zu Ihrem lokalen Quelle:

> dotnet pack 
> Nuget-AddAllLocal