Flujo de trabajo de creación de paquetes

La creación de un paquete empieza con el código compilado (normalmente los ensamblados .NET) que quiera empaquetar y compartir con otros usuarios, ya sea a través de la galería pública de nuget.org o mediante una galería privada de su organización. El paquete también puede incluir otros archivos (como un archivo Léame que se muestre en el momento de instalar el paquete), así como transformaciones de determinados archivos de proyecto.

Un paquete también puede servir para solo sacar una determinada cifra de dependencias, sin que contenga código propio. Este tipo de paquete es un método cómodo para entregar un SDK que está formado por varios paquetes independientes. En otros casos, un paquete puede contener solo archivos de símbolos (.pdb) para facilitar la depuración.

Nota

Al crear un paquete para que lo usen otros desarrolladores, es importante tener en cuenta que están tomando una dependencia de su trabajo. Por definición, crear y publicar un paquete también implican un compromiso para corregir errores y efectuar otras actualizaciones, o por lo menos hacer que el paquete esté disponible como código abierto para que otros usuarios puedan colaborar en su mantenimiento.

Sea cual sea el caso, la creación de un paquete empieza por decidir su identificador, número de versión, licencia, información de copyright y cualquier otro contenido necesario. Una vez hecho esto, puede usar el comando "pack" para colocar todo en un archivo .nupkg. Este archivo se puede publicar en un canal NuGet, como nuget.org.

Sugerencia

Un paquete de NuGet con la extensión .nupkg es un simple archivo ZIP. Para examinar fácilmente el contenido de cualquier paquete, cambie la extensión a .zip y expanda su contenido como de costumbre. Asegúrese de volver a cambiar la extensión a .nupkg antes de intentar cargarla en un host.

Para aprender y entender el proceso de creación, comience creando un paquete, que le guiará a través de los procesos básicos comunes para todos los paquetes.

Desde ahí podrá plantearse una serie de opciones más para el paquete:

  • En Compatibilidad con varias plataformas de destino se describe cómo crear un paquete con varias variantes para diferentes versiones de .NET Framework.
  • En Creación de paquetes localizados se describe cómo estructurar un paquete con varios recursos de idioma y cómo usar paquetes satélite localizados e independientes.
  • En Paquetes de versión preliminar se muestra cómo liberar paquetes alfa, beta y rc a aquellos clientes que estén interesados.
  • En Origen y transformaciones del archivo de configuración se describe cómo se pueden hacer reemplazos de tokens unidireccionales en archivos que se agregan a un proyecto y cómo modificar web.config y app.config con una configuración que también se retira cuando se desinstala el paquete.
  • En Paquetes de símbolos se ofrecen consejos para proporcionar símbolos para su biblioteca que permiten a los consumidores entrar en el código durante la depuración.
  • En Package versioning (Control de versiones de paquetes) se describe cómo identificar las versiones exactas que se permiten para las dependencias (otros paquetes que se usan en el paquete).
  • En Paquetes nativos se describe el proceso de creación de un paquete para los consumidores de C++.
  • En Firma de paquetes NuGet se describe el proceso para agregar una firma digital a un paquete.

Cuando esté preparado para publicar un paquete en nuget.org, siga el proceso simple en Publicar un paquete.

Si quiere usar una fuente privada en lugar de nuget.org, vea la información general sobre el hospedaje de paquetes.