2015-07-06 11 views
8

ho installato Paket da NuGet in Nuget Console Package Manager con:Come utilizzare Paket da linea di comando

Installare-Pacchetto paket

Allora ho provato a correre paket convert-from-nuget. Si è bloccato su un prompt utente (non mi ha permesso di digitare nella console del gestore pacchetti). Il mio prossimo pensiero è stato quello di eseguirlo da linea di comando, ma come a farlo non è documentato.

Inserire semplicemente paket convert-from-nuget in un prompt di comando dev standard genera un errore che indica che "paket" non è riconosciuto.

Come si esegue paket dalla riga di comando o PowerShell e come si specifica quale soluzione utilizzare?

risposta

7

Il modo di impostazione Paket nel repository è la seguente:

1 Scaricare un rilascio di paket.bootstrapper.exe

Si tratta di un programma leggero che ottiene e aggiornamenti paket.exe, pick rilascio stabile dalla pagina ufficiale di rilascio:

https://github.com/fsprojects/Paket/releases

2 creare una cartella .paket

md .paket 

3 mettere il programma di avvio automatico scaricati in questa cartella e invocarlo

cd .paket 
paket.bootstrapper 

Ora avete un up-to-date paket.exe pronto a facilitare il vostro trattamento delle dipendenze.

4 convertito dal NuGet

cd .. 
.paket\paket convert-from-nuget 

Si prega di check-out il https://github.com/fsprojects/Paket.VisualStudio anche per Visual Studio plugin per aiutarti a authoring paket.dependencies e paket.references file di

prega anche partecipare https://gitter.im/fsprojects/Paket se avete domande.

4

Il pacchetto Chocolatey modifica la variabile di ambiente PSModulePath. Ho notato che a volte tale modifica non viene rilevata fino a quando il sistema non viene riavviato (o almeno non fino a quando l'utente non si disconnette e ritorna di nuovo). Nel frattempo, è possibile importare il modulo utilizzando:

Import-Module <path-to-packages>\Paket.PowerShell\Paket.PowerShell.psd1 

Il percorso dei pacchetti è di solito qualcosa di simile a C: \ Chocolatey \ lib. OTOH, rileggendo la tua domanda, ti stai riferendo al Nuget all'interno di Visual Studio? In tal caso, tale download viene scaricato da NuGet.org e il pacchetto pkg inserisce paket.exe in $ (SolutionDir) \ packages \ Pakget.1.18.5 \ tools \ paket.exe. Il numero di versione potrebbe variare.

Sfortunatamente il fatto che PowerShell V5 introduca il pacchetto di installazione (che viene scaricato da Chocolatey per impostazione predefinita) otterrà un po 'di confusione vis-a-vie del pacchetto di installazione della console di NuGet Package Manager in Visual Studio.

+0

Sì, mi riferivo all'installazione tramite nuget in Visual Studio.Quindi, per usarlo al di fuori di esso, ho bisogno di navigare verso la versione nella directory della soluzione o installarlo separatamente in PowerShell? Per quest'ultimo, come si specifica la soluzione? – BradleyDotNET

+0

La versione fornita da Visual Studio non installa un modulo PowerShell. Quindi, per questo, puoi semplicemente specificare il percorso a \ tools \ paket.exe ad es. '& 'C: \ users \ foo \ documents \ visual studio 2013 \ projects \ acme \ packages \ paket.1.18.5 \ tools \ paket.exe' arg1 arg2' –

+0

Grazie per le informazioni. Sono ancora curioso del metodo per specificare una soluzione quando si utilizzano i moduli PowerShell del modulo di shell di potenza – BradleyDotNET