Fuente inalcanzable cuando se usa la consola NuGet Package Manager

153

Estamos moviendo nuestra administración de paquetes de la actualización manual de archivos a NuGet. Estoy tratando de instalar versiones anteriores de paquetes para que coincidan con la que ya tenemos en el control de código fuente. No hay forma de hacer esto desde la interfaz de usuario, así que uso la línea de comando para obtener la versión adecuada.

Por alguna razón, Install-Packagesigue diciéndome que la galería nuget es inalcanzable.

La fuente en nuget.org [ https://www.nuget.org/api/v2/] es inalcanzable. Volviendo a la memoria caché local NuGet

Esto sucede solo en una de nuestras soluciones. Si creo una nueva solución o uso otra en el mismo repositorio, los paquetes se instalarán como se esperaba. Incluso puedo instalar los paquetes en una solución ficticia para llenar el caché local y luego instalarlos con éxito en la solución defectuosa. He intentado Invoke-WebRequesten la url de la consola NuGet y obtengo un HTTP 200.

¿Qué puede causar esto? ¿Hay alguna forma de anular las fuentes del paquete por solución / proyecto?

Etienne Maheu
fuente
3
Estoy teniendo este mismo problema. Instalé VS 2013 Update 2 ayer, ¿quizás es un error nuevo ...? Por cierto, puedo instalar cualquier paquete a través del cuadro de diálogo "Administrar paquetes NuGet" sin problemas, este problema solo ocurre en la consola del Administrador de paquetes.
rsenna
2
He tenido el mismo problema. Siempre funciona en el cuadro de diálogo Administrar paquetes; nunca funciona en la Consola del Administrador de paquetes.
David Tansey
10
Reiniciar Visual Studio me arregló esto ಠ_ಠ
Chris Marisic

Respuestas:

338

A pesar de que mi Origen del paquete se configuró en nuget.org en la Consola del Administrador de paquetes, agregar explícitamente el -Source nuget.orgargumento me solucionó esto.

Entonces, un ejemplo de uso sería:

Install-Package Akka.net -Source nuget.org

Akka.net es su paquete que desea instalar, es solo un ejemplo aquí.

cinta adhesiva
fuente
1
Reinicié mi PC y Visual Studio. pero ... agregar -Source nuget.org realmente hizo el truco para mi nueva instancia de .vbproj dentro de mi .sln multiproyecto existente
bkwdesign
¿Dónde agregar este argumento y cómo? ¿Puedes por favor dar más información?
Radenko Zec
También funcionó para mí (¡en este momento, en realidad!). Estaba tratando de instalar una versión anterior de jQuery, pero seguía generando el error: "La fuente en nuget.org [ nuget.org/api/v2/] ". Sin embargo, no sé cómo solucionarlo.
Loudenvier
gracias, lo hice de esta manera:Install-Package jQuery.UI.Combined -Source nuget.org
shaijut
77
¿Tienes alguna idea de cómo funciona esto? Tengo curiosidad porque esto no tiene ningún sentido para mí, incluso si funciona. Entonces, el error dice que la fuente en nuget.org [ nuget.org/api/v2/] es inalcanzable y luego especifico la misma fuente -Source nuget.orgy funciona.
Vladimirs
10

Tuve que copiar la fuente NuGet predeterminada en las opciones de Visual Studio. Con la fuente copiada, cambié la URL de httpsa http. Esto resolvió el problema para mí.

El crédito por esta sugerencia pertenece aquí: https://nuget.codeplex.com/discussions/561075#PostDetailsCell_1354351 , a "jpharris4".

Zarepheth
fuente
Este es un muy buen punto. NuGet puede ser sensible a la validación de certificados.
Etienne Maheu
6

No estoy seguro de qué puede causar su problema, pero de hecho hay una forma de anular las fuentes de paquetes por solución, pero solo si ha habilitado NuGet Package Restore en la solución dada.

Una vez que una solución ha habilitado NuGet Package Restore, se agrega una carpeta llamada ".nuget" a la solución. Debajo de esto habrá un archivo llamado "NuGet.targets" que tiene un ItemGroup cuya condición es "'$ (PackageSources)' == ''" como el que verá en la imagen adjunta.

Si el ItemGroup está vacío (o completamente comentado, como en la ilustración), la solución usará un archivo específico que debería ser el mismo que el de las fuentes enumeradas en HERRAMIENTAS >> OPCIONES. Pero si descomenta o agrega elementos de PackageSource a ese ItemGroup, la solución buscará los orígenes de paquetes enumerados y SOLO los que figuran.

Contenido del archivo Nuget.targets

Omnidisciplinarianist
fuente
2
Las fuentes de paquetes definidas en el archivo NuGet.targets solo afectan a las utilizadas durante la compilación cuando se restaura un paquete. Las fuentes de paquetes en el archivo NuGet.config en el directorio .nuget afectarán las fuentes de paquetes disponibles para un proyecto en Visual Studio.
Matt Ward
Tengo la restauración del paquete habilitada para esta solución. El ItemGroup está configurado como en su captura de pantalla, que supongo que es la configuración predeterminada, así que no creo que este sea el problema. Sin embargo, la restauración del paquete se ha habilitado hace mucho tiempo y el archivo de destino cambió desde entonces. Intenté actualizar esos archivos a la última versión eliminándolos y volviendo a habilitar la restauración del paquete y parece que resolvió el problema.
Etienne Maheu
O no. Al principio funcionó, pero después de restaurar los paquetes para la solución y reiniciar Visual Studio, el problema volvió.
Etienne Maheu
Algunas preguntas aclaratorias: 1) ¿Tiene las versiones adecuadas referenciadas en packages.config? 2) ¿Ha confirmado que la versión que busca todavía existe en el servidor NuGet ? 3) ¿Ha limpiado la solución y luego la ha reconstruido después de haber completado 1) y 2)?
Omnidisciplinarianist
1
Si te sirve de consuelo, recibo este problema, pero solo en mi PC de trabajo y sucede con la mayoría de los proyectos. ¡Lo extraño es que es intermitente lo que me vuelve loco!
Matt
6

También puede cambiar la fuente NuGet desde la interfaz de usuario. Simplemente cambie la fuente de NuGet a una versión anterior y debería funcionar bien.

ingrese la descripción de la imagen aquí

Parece que todavía hay pocos errores en VS 2015 relacionados con api.nuget.org (v3).

Sameer Azazi
fuente
2

En la consola de Package Manager no pude ver ninguna fuente

Ir a: Herramientas -> Opciones -> Administrador de paquetes Nuget -> Fuentes de paquetes

Encontré las fuentes. Al desmarcarlos, y al volver a verificarlos, apareció nuevamente en la consola de Package Manager

user2083640
fuente
2

Tuve que proporcionar el comandante junto con la url completa como Install-Package MySql.Data.Entity -Version 6.9.8 -Source http://www.nuget.org/api/v2

gavinfonseca
fuente
1

En mi caso, la causa fue que el paquete tenía un acuerdo. A través del cuadro de diálogo UI - "Administrar paquetes NuGet" tiene la opción de aceptar y continuar.

La consola de Package Manager en VS 2013 parece tener un problema con esto. Como otros han dicho, reiniciar VS 2013 podría resolverlo para la consola.

Byron
fuente
1

Esto funcionó para mí en VS 2015 prof: Herramientas -> Opciones -> Administrador de paquetes Nuget -> Fuentes de paquetes

  1. Presione el botón Agregar
  2. Editar en la etiqueta de nombre: nuget.org
  3. Editar en la etiqueta de origen: https://www.nuget.org/api/v2/
  4. presiona OK

Espero eso ayude ;)

praguan
fuente
Para VS 2015, debería usar v3 de su lista ... ¡no v2! Tomado de su página de inicio NuGet feed v3 (VS 2015 / NuGet v3.x): api.nuget.org/v3/index.json NuGet feed v2 (VS 2013 y anterior / NuGet 2.x): nuget.org/api/v2
Paul Zahra
0

Tuve el mismo problema con el mismo mensaje. Pero la razón de mi problema fue la pérdida de conexión a TFS. Mi servidor TFS estaba alojado en otra red y usé VPN para acceder a él. Cuando intenté instalar el paquete sin una conexión establecida a TFS (la VPN estaba apagada), tuve el mismo problema.

Tenga en cuenta este comportamiento de TFS.

RredCat
fuente
0

Ocurre porque trabajas en modo fuera de línea, cuando vuelves a conectar la red tendrá que cerrar sesión y volver a cerrarla. El administrador de paquetes se reiniciará sin problemas.

Rakesh Pahuja
fuente
0

Me he enfrentado a este problema VS2013 y he perdido 3 horas de tiempo.

No estoy seguro de cuál fue la causa del problema. Pero ninguna de las soluciones anteriores funcionó para mí.

La reinstalación de la consola de Nuget Package Manager funcionó para mí.

Herramientas -> Extensiones y actualizaciones -> Debajo de todo Busque Nuget Package Manager para Visual Studio y presione desinstalar.

Vaya a https://marketplace.visualstudio.com/items?itemName=NuGetTeam.NuGetPackageManagerforVisualStudio2013 y descargue la extensión.

Syed Abbas
fuente
0

ingrese la descripción de la imagen aquí. Puede ser el firewall de su oficina / hogar bloqueando nuget.org, así que intente conectar diferentes redes de Internet, por ejemplo, desde su teléfono móvil o wifi. Pude resolverlo mediante este método.

usuario1687805
fuente