Tengo algunos archivos .nupkg de un libro de C #. ¿Cómo puedo instalarlos?
visual-studio
nuget
Tom
fuente
fuente
También puede usar la consola de Package Manager e invocar el
Install-Package
cmdlet especificando la ruta al directorio que contiene el archivo del paquete en el-Source
parámetro:fuente
-Source
opción también está disponible en nuget.exe . Por ejemplo:nuget install SomePackage -Source C:\PathToThePackageDir
Para los archivos .nupkg que me gusta usar:
fuente
.nupkg
en el mismo directorio que todos los demás paquetes fueron almacenados)Para Visual Studio 2017 y su nuevo formato .csproj
Ya no puede simplemente usar Install-Package para apuntar a un archivo local. (Eso es probable porque el
PackageReference
elemento no admite rutas de archivo; solo le permite especificar el Id. Del paquete).Primero tiene que decirle a Visual Studio sobre la ubicación de su paquete, y luego puede agregarlo a un proyecto. Lo que la mayoría de la gente hace es ir al Administrador de paquetes NuGet y agregar la carpeta local como fuente (menú Herramientas → Opciones → Administrador de paquetes NuGet → Fuentes de paquetes ). Pero eso significa que la ubicación de su dependencia no está comprometida (con el control de versiones) con el resto de su base de código.
Paquetes NuGet locales utilizando una ruta relativa
Esto agregará un origen de paquete que solo se aplica a una solución específica, y puede usar rutas relativas.
Necesita crear un
nuget.config
archivo en el mismo directorio que su.sln
archivo. Configure el archivo con las fuentes del paquete que desee. La próxima vez que abra la solución en Visual Studio 2017, todos los archivos .nupkg de esas carpetas de origen estarán disponibles. (Verá las fuentes enumeradas en el Administrador de paquetes, y encontrará los paquetes en la pestaña "Examinar" cuando administre paquetes para un proyecto).Aquí hay un ejemplo
nuget.config
para comenzar:Trasfondo
Mi caso de uso para esta funcionalidad es que tengo varias instancias de un único repositorio de código en mi máquina. Hay una biblioteca compartida dentro de la base de código que se publica / implementa como un archivo .nupkg. Este enfoque permite que las diversas soluciones dependientes en nuestra base de código usen el paquete dentro de la misma instancia de repositorio. Además, alguien con una nueva instalación de Visual Studio 2017 puede simplemente retirar el código donde quiera, y las soluciones dependientes se restaurarán y construirán con éxito.
fuente
-Source
argumentoUpdate-Package
y funcionó bien. Tal vez algo que ver específicamente con elInstall-Package
comando?Cree un archivo llamado NuGet.config junto a su archivo de solución con el siguiente contenido
Si la solución está abierta en Visual Studio, ciérrela y vuelva a abrirla.
Ahora sus paquetes deberían aparecer en el navegador o ser instalables usando Install-Package
fuente
Si tiene un archivo .nupkg y solo necesita el archivo .dll, todo lo que tiene que hacer es cambiar la extensión a .zip y buscar el directorio lib.
fuente
Solo para dar una actualización, hay cambios menores para los usuarios de Visual Studio 2015.
Para usar o instalar el paquete manualmente, vaya a Herramientas -> Opciones -> Administrador de paquetes NuGet -> Fuentes de paquetes
Haga clic en el botón Agregar, elija la Fuente y no olvide hacer clic en " Actualizar ", ya que actualizará la ubicación de la carpeta de sus paquetes, edite el Nombre deseado de la fuente de su paquete si lo desea:
Para elegir su paquete agregado, haga clic con el botón derecho en su solución y seleccione " Administrar paquetes Nuget "
La lista desplegable está a la derecha y elige Examinar para explorar los paquetes que especificaste en el origen de tu carpeta. Si no hay un paquete nuget en el origen de esa carpeta, estará vacío:
fuente
En Linux, con NuGet CLI, los comandos son similares. Para instalar my.nupkg, ejecute
Luego corre
dotnet restore
desde ese directorioo agregue ese directorio como fuente NuGet
y luego decirle
msbuild
que use ese directorio con/p:RestoreAdditionalSources=MySource
o/p:RestoreSources=MySource
. El segundo interruptor deshabilitará todas las otras fuentes, lo cual es bueno para escenarios fuera de línea, por ejemplo.fuente
nuget sources
si está usandodotnet restore
(o VS Mac ) debido a este error. Tuve que agregar la fuente local al~/.nuget/NuGet/NuGet.Config
manual (ver este problema de GH ).