2012-03-12 10 views
21

Estoy tratando de instalar EnterpriseLibrary para el manejo transitorio de fallas. Este es un paquete de Microsoft. Cuando intento instalar que estoy consiguiendo el error siguiente:¿Cómo puedo solucionar problemas de instalación de este paquete de 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 

He intentado seleccionar el paquete desde la interfaz de usuario Nuget. Intenté instalar manualmente el paquete usando la línea de comandos de Nuget.

He intentado instalar manualmente las dependencias una por una. Falla en el mismo paquete cada vez.

La ubicación de mi proyecto es la ubicación predeterminada MyDocuments/visualstudio/projects.

¿Alguna idea?

+3

Hay un problema abierto en el proyecto NuGet: https://nuget.codeplex.com/workitem/4311. – whyleee

Respuesta

26

Parece que la ruta de su proyecto es lo suficientemente larga como para que cuando el paquete esté instalado, agregue la carpeta del paquete falle porque alcanzó el límite de longitud de nombre calificado.

quiero decir: [unidad]: \ Users [usuario] \ Documentos \ Visual Studio 2010 \ Projects [YourProject] \ paquetes \ + \ EnterpriseLibrary.WindowsAzure.TransientFaultHandling \ tiene más del límite.

¿Puedes mover tu proyecto a otro lugar?

+2

Está en la ubicación predeterminada para proyectos de estudio visual. Probablemente crearé una carpeta de proyectos en la raíz de mi disco. Este es un error extraño de ver con una ubicación de proyecto predeterminada, específicamente porque nada sobre esta ruta es excepcional o inusualmente largo. Siempre he pensado que el límite de caracteres de ruta debe aumentarse en el sistema operativo, pero ese es un tema diferente. – BentOnCoding

+0

Gracias Moví mi proyecto a la unidad raíz, y funcionó. – Niraj

+0

cuando vi este error, pensé que este es el problema en el administrador de paquetes nuget ... Gracias, he movido mi solución a alguna otra subcarpeta y funcionó .. – Ein2012

2

que también han conseguido el mismo error pero llegó fácilmente resuelto, cuando me mudé mi paquete a un nivel superior unidad, o u probablemente puede mantener su proyecto dentro de una carpeta en

seguramente va a trabajar en lugar de dando un camino muy largo

unidad: \ [carpeta1] \ documentos \ Visual Studio 2010 [carpeta2] [Proyecto] \ .. \

que excede el límite de 248 caracteres

12

Además de Alexandre' s respuesta:

Puede usar el subst command para mantener su ruta más corta. Por ejemplo, yo tuve un problema similar y se utiliza

subst P: "C: \ Usuarios \ [nombre de usuario] \ Documentos \ Visual \ Proyectos Estudio [año]"

para crear un nuevo P: unidad (p para proyectos) y acortar la longitud de la ruta por muchos caracteres. Asegúrese de abrir la solución navegando a la solución que se encuentra debajo de P: no C: \ Users \ Docs ..., y es posible que desee eliminar los accesos directos (especialmente los proyectos recientemente abiertos) a las soluciones en C :.

También puede crear un archivo por lotes que contiene este y ponerlo en el menú Inicio/De inicio (o C: \ Usuarios \ [nombre de usuario] \ Datos de programa \ Menú Roaming \ Microsoft \ Windows \ Inicio \ Programas \ Inicio), que se ejecutarlo cada vez que inicie su computadora y significa que siempre tiene una unidad P :.

+0

Esto funcionó - además encontré que después de abrir la solución desde el acorté la ruta y actualicé mis paquetes NuGet, pude reabrir y construir mi solución desde la ubicación original de ruta larga. – perlyking

+0

Eso es un gran truco. – joshmcode

0

He estado enfrentando un problema similar, sin embargo, lo que hice fue descargar manualmente el archivo (.extensión de archivo nupkg) y luego hacer clic en la configuración de los paquetes de Manejo de NuGet

enter image description here

A continuación, seleccione el paquete descargado (Guárdelo en una carpeta separada, puede guardar todos sus archivos de paquetes descargados en esta carpeta) y la actualización

enter image description here

0

Sí previamente mi proyecto estaba en el escritorio, me acabo de mudar a una de mis Drive, re-iniciado el proyecto, su inicio funcionó para mí.

Cuestiones relacionadas