2012-03-12 15 views
21

Sto tentando di installare EnterpriseLibrary per Transient Fault Handling. Questo è un pacchetto Microsoft. Quando provo a installarlo sto ottenendo il seguente errore:Come posso risolvere l'installazione di questo pacchetto Nuget?

Install failed. Rolling back... 
Install-Package : The specified path, file name, or both are too long. The fully qualified file name must be less than 260 char 
acters, and the directory name must be less than 248 characters. 
At line:1 char:16 
+ Install-Package <<<< EnterpriseLibrary.WindowsAzure.TransientFaultHandling 
    + CategoryInfo   : NotSpecified: (:) [Install-Package], PathTooLongException 
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand 

Ho provato selezionando il pacchetto dal ui Nuget. Ho provato a installare manualmente il pacchetto utilizzando la riga di comando Nuget.

Ho provato a installare manualmente le dipendenze uno per uno. Non riesce sullo stesso pacchetto ogni volta.

La posizione del mio progetto è il percorso predefinito MyDocuments/visualstudio/projects.

Qualche idea?

+3

C'è un problema aperto nel progetto NuGet: https://nuget.codeplex.com/workitem/4311. – whyleee

risposta

26

Sembra che il percorso del progetto sia sufficientemente lungo che quando il pacchetto è installato, l'aggiunta della cartella del pacchetto non riesce perché ha raggiunto il limite di lunghezza del nome qualificato.

voglio dire: [unità]: \ Users [utente] \ Documenti \ Visual Studio 2010 \ Projects [ProgettoUtente] \ pacchetti \ + \ EnterpriseLibrary.WindowsAzure.TransientFaultHandling \ ha più rispetto al limite.

Puoi spostare il tuo progetto da qualche altra parte?

+2

È nella posizione predefinita per i progetti di Visual Studio. Probabilmente creerò una cartella di progetti nella root della mia unità. Questo è un errore strano da vedere con un percorso di progetto predefinito, in particolare perché nulla su questo percorso è eccezionale o insolitamente lungo. Ho sempre pensato che il limite del percorso dovrebbe essere aumentato nel sistema operativo, ma si tratta di un argomento diverso. – BentOnCoding

+0

Grazie, ho spostato il mio progetto sul root drive, e ha funzionato. – Niraj

+0

quando ho visto questo errore ho pensato che questo fosse il problema nel gestore di pacchetti nuget. Grazie ho spostato la mia soluzione in un'altra sottocartella e ha funzionato .. – Ein2012

2

Inoltre ho ottenuto lo stesso errore ma ha ottenuto facilmente risolta, quando ho spostato il mio pacchetto per un livello superiore auto, o la u può probabilmente mantenere il progetto all'interno di una cartella in

sarà sicuramente lavoro, piuttosto che dando un percorso lungo

unità: \ [cartella1] \ Documenti \ Visual Studio 2010 [cartella2] [ProjectName] \ .. \

che supera il limite di 248 caratteri

12

Oltre a Alexandre' Risposta:

È possibile utilizzare subst command per mantenere il percorso più breve. Per esempio ho avuto un problema simile e usato

subst P: "C: \ Users \ [nome utente] \ Documenti \ Visual Studio [anno] \ Projects"

per creare un nuovo P: guidare (p per progetti) e accorciare la lunghezza del percorso di molti caratteri. Assicurati di aprire la soluzione navigando verso la soluzione in P: non C: \ Users \ Docs ... e potresti voler eliminare eventuali scorciatoie (in particolare i progetti aperti di recente) alle soluzioni in C :.

È inoltre possibile creare un file batch che contenga questo e inserirlo in Menu Start/Avvio (o C: \ Utenti \ [nome utente] \ AppData \ Roaming \ Microsoft \ Windows \ Menu Avvio \ Programmi \ Avvio) che eseguilo ogni volta che avvii il tuo computer e significa che hai sempre una P: drive.

+0

Questo ha funzionato - inoltre ho scoperto che dopo aver aperto la soluzione dal percorso abbreviato e l'aggiornamento dei miei pacchetti NuGet, sono stato in grado di riaprire e creare la mia soluzione dalla posizione originale, a percorso lungo. – perlyking

+0

Questo è un grande trucco. – joshmcode

0

Sono stato di fronte al problema simile, tuttavia, quello che ho fatto è stato quello di scaricare manualmente il file (.estensione del file nupkg) e poi cliccando su impostazioni nei pacchetti Gestire Nuget

enter image description here

Quindi selezionare il pacchetto scaricato (Tenerlo in una cartella separata, è possibile mantenere tutti i file pacchetto scaricato in questa cartella) e l'aggiornamento

enter image description here

0

Sì in precedenza il mio progetto è stato in Desktop, ho appena trasferita a uno dei miei file, ri-avviato il progetto, il suo inizio ha lavorato per me.

Problemi correlati