Red de conocimiento informático - Material del sitio web - Cómo publicar una versión beta de un paquete de software usando el comando nuget

Cómo publicar una versión beta de un paquete de software usando el comando nuget

Utilice NuGet para publicar sus propios paquetes de biblioteca

NuGet es una conocida extensión de Visual Studio que permite a los desarrolladores instalar o actualizar fácilmente los componentes de terceros necesarios en el proyecto en Visual Studio y con la ayuda de NuGet. Instale algunos complementos de Visual Studio, etc. Como desarrollador, también puede desarrollar algunos componentes públicos *** para que otros los utilicen. Este artículo presentará paso a paso cómo publicar sus propios paquetes de biblioteca de clases desarrollados en nuget de la forma más sencilla para que más personas los utilicen.

Antecedentes

Si no sabes qué es NuGet, aquí tienes un ejemplo: Necesito hacer referencia al ensamblado Castle.Core en mi proyecto. Lo que hice en el pasado fue. Para descargar la última versión del dll del sitio web de Castle Projects, cópielo en el directorio lib de su proyecto (o donde quiera copiarlo) y luego agréguelo al directorio lib de su proyecto. Descargue el ensamblaje principal del sitio web de Castle Projects, descargue la última versión del dll y luego cópielo en el directorio lib del proyecto (o donde quiera copiarlo). Esto no solo es tedioso, sino que también requiere que lo guarde. Echa un vistazo al sitio web para ver la última versión del ensamblado (por supuesto, tal vez no le prestes atención). Lo que es más molesto es que si eres colaborador de un proyecto de código abierto, necesitas gastar una cierta cantidad. de tiempo administrando todas estas bibliotecas. No solo eso, sino que si está utilizando un sistema de control de fuente (como git), también debe cargar todas estas bibliotecas en el sistema de control de fuente; de ​​lo contrario, otros miembros del equipo no podrán compilar estas bibliotecas correctamente incluso si tener acceso al código fuente. Pero esto, a su vez, aumenta enormemente el espacio de almacenamiento del código fuente, lo que hace que la clonación y descarga del código requiera mucho tiempo.

Ahora puedes utilizar NuGet directamente para resolver todos tus problemas. Creemos una biblioteca de clases llamada DaxnetNugetTest, luego hagamos clic derecho en el proyecto y seleccionemos Administrar paquetes NuGet:

En el cuadro de diálogo emergente, busque la palabra clave Castle Core en la lista de resultados de búsqueda y luego haga clic Haga clic en el botón Instalar:

Una vez completada la instalación, Castle.NET Framework se basará en .NET Framework.

En el futuro, si el ensamblaje Castle.Core tiene una actualización de versión, también puede usar el menú Administrar paquete NuGet para abrir el cuadro de diálogo anterior y luego, en la lista de actualizaciones a la izquierda, puede Enumere los paquetes que se han actualizado. La actualización de versión que se produjo, si la hubo, se puede actualizar haciendo clic en el botón Actualizar.

Lo que es más interesante es que si hace clic derecho en la solución y selecciona el menú Habilitar restauración de paquetes NuGet, NuGet analizará automáticamente los componentes de terceros de los que depende el proyecto cuando lo compila y luego antes de Comienza la compilación. Las versiones requeridas se descargan automáticamente en línea, por lo que no necesita mantener estas bibliotecas ni cargarlas en su sistema de administración de código fuente.

Pero ese no es el objetivo de este artículo. Este artículo le mostrará cómo publicar su propia biblioteca de clases en NuGet.

Publique su propio paquete de biblioteca de clases

Paso 1: regístrese en NuGet y obtenga una clave API

Primero, debe registrar una clave API en NuGet Nuevo cuenta, luego obtenga su clave API en la página Mi cuenta. No lo explicaré.

Paso 2: Descargue NuGet.exe

NuGet tiene una herramienta de línea de comandos, NuGet.exe, que es muy útil, pero es necesario descargarla antes de usarla. Para facilitar su uso, configure la variable de entorno PATH de su computadora y agregue la ruta a NuGet.exe a PATH.

Paso 3: Establecer la clave API

Utilice el siguiente comando para configurar la clave API de NuGet:

1

nuget setApiKey

Recuerde reemplazar my_api_key arriba con la clave obtenida en el paso 1

Paso 4: Desarrolla tu propia biblioteca de clases

1

NuGet.exe.php Agregue NuGet.exe a la variable de entorno PATH: desarrolle su propia biblioteca de clases

Arriba, creamos una nueva biblioteca de clases DaxnetNugetTest y pasamos NuGet Referencia agregada a Castle.Core. Referencia a Core, ahora agreguemos algo de código para usar algunas de las funciones proporcionadas por Castle.Core. Funciones proporcionadas por Core. Pair GetIntPair()

{

devuelve nuevo Castle.Core.Pair(20, 30);

}

}

Luego, abra el archivo AssemblyInfo.cs y configure las propiedades del ensamblaje. Recuerde configurar el atributo AssemblyVersion nuevamente para especificar la versión de la biblioteca de clases. Actualmente estamos usando la versión 1.0.0. 0:

1

2

3

4

5

6

7

8

9

10

11

12 p>

13

14

[ensamblaje:

[ensamblaje:AssemblyTitle("DaxnetNugetTest")]

[ensamblaje :AssemblyDescription("Prueba de NuGet de Daxnet.")]

[ ensamblaje: AssemblyConfiguration("")]

[ensamblaje: AssemblyCompany("daxnet")]

[ensamblado: AssemblyProduct("DaxnetNugetTest")]

[ensamblado: AssemblyCopyright("Copyright ?daxnet 2013")]

[ensamblado: AssemblyTrademark("") ]

[ensamblado: AssemblyCulture("")]

[ensamblado: ComVisible(false)]

[ensamblado: Guid("20662b9f-91de-4515 -9c8c -ced3d61589e1")]

[assembly: AssemblyVersion("1.0.0.0")]

Una vez establecidas todas las configuraciones, compila todo el proyecto y sal.

Paso 5: Generar y modificar nuspec

Nuspec es el archivo de entrada para que NuGet empaquete el proyecto como nupkg, que se puede generar usando el comando nuget spec. En el símbolo del sistema, vaya al directorio donde se encuentra el archivo DaxnetNugetTest.csproj y ejecute:

1

nuget spec

En este punto, se le solicitará Creado con éxito:

Abra el archivo DaxnetNugetTest.nuspec con el Bloc de notas.

Utilice el Bloc de notas para abrir el archivo nuspec de DaxnetNugetTest y utilice el Bloc de notas para reemplazar la información que necesita ser reemplazada, eliminar todas las etiquetas innecesarias y prestar atención a las macros $xxx$, que están configuradas en AssemblyInfo. .cs Referencias a valores que serán reemplazados por los valores correspondientes en AssemblyInfo.cs cuando se compile el paquete generado. Después de terminar de editar, nuestro archivo nuspec se ve así:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

$id$

< versión>$versión$

$título$

$autor$

< requireLicenseAcceptance>.false

$description$

Primera versión<

Copyright 2013< /copyright>

Tenga en cuenta dos puntos: 1. $description$ se reemplaza con el valor de AssemblyDescriptionAttribute, antes Al generar el paquete, debe recordar compilar el proyecto; de lo contrario, aparecerá un error que indica que no se puede encontrar $ descripción $ 2. Si no hay notas de lanzamiento, elimine el nodo directamente. Si lo hay, complete el contenido usted mismo y hágalo. No utilice el contenido predeterminado; de lo contrario, se generará en el siguiente paso.

Paso 6: Generar paquete de biblioteca

También en la ruta DaxnetNugetTest.csproj, use el siguiente comando para generar el paquete de biblioteca NuGet:

1

nuget pack DaxnetNugetTest.csproj

Después del éxito, solicite:

Nota: dado que nuestro proyecto hace referencia a Castle.Core a través de NuGet, se empaquetará como una dependencia en el archivo generado. archivo nupkg.

Además, NuGet empaquetará el ensamblado generado utilizando la configuración predeterminada del proyecto.

Si el proyecto tiene como valor predeterminado Depurar y necesita empaquetarlo como Versión, use el siguiente comando:

1

nuget pack DaxnetNugetTest.csproj -Prop Configuration=Release

Paso 7: Publicar el paquete de la biblioteca

Ahora, use el siguiente comando para publicar el paquete de la biblioteca:

1

nuget push DaxnetNugetTest.1.0.0.0 .nupkg

Una vez completado, aparecerá el siguiente mensaje:

Paso 8: Pruebe el paquete de biblioteca publicado

Cree una nueva aplicación de consola, haga clic con el botón derecho en Hacer clic el proyecto, seleccione Administrar paquetes NuGet e ingrese DaxnetNugetTest en el cuadro de búsqueda. En este punto, se pueden mostrar nuestros paquetes publicados:

Haga clic en el botón Instalar y NuGet analizará automáticamente las dependencias de los componentes, luego descargará y agregará todos los ensamblajes necesarios a las referencias del proyecto. Descargue y agregue todos los ensamblajes necesarios a las referencias del proyecto:

Escriba un fragmento de código para probar:

1

2

3

4

5

6

7

8

9

Clase Programa

{<

static void Main(string[] args)

{

var par = DaxnetNugetTest .CastleHelper.GetIntPair();

Console.WriteLine(pair.First);

Console.WriteLine(pair.Second);

}

}

El resultado es el siguiente:

Paso 9: Actualizar el paquete de la biblioteca de clases

Con el avance continuo del desarrollo de la biblioteca de clases, No será posible evitar las actualizaciones de versión. Actualizar un paquete de biblioteca de clases es tan simple como actualizar el número de versión en AssemblyInfo.cs y volver a realizar los pasos 6 y 7 anteriores. Tenga en cuenta que al realizar el paso 7, el nombre de archivo nupkg debe utilizar el nombre de archivo de la nueva versión.

Ahora, volvamos a abrir el proyecto DaxnetNugetTest, cambiemos 20,30 en la clase CastleHelper a 40,50, luego abramos AssemblyInfo.cs y actualicemos el número de versión a 2.0.0.0.

Abra el programa de consola utilizado para probar el programa de consola y abra el cuadro de diálogo Administrar paquete NuGet. Podemos ver en la actualización que DaxnetNugetTest se ha actualizado:

Haga clic en el botón Actualizar para. La biblioteca de clases está actualizada a la última versión. Al volver a ejecutar el programa de la consola, encontramos que el resultado ya tiene el valor de la última versión:

Paso 10: eliminar el paquete publicado

En principio, NuGet no permite a los usuarios eliminar un paquete publicado. y solo lo configura para que no aparezca en la lista Administrar paquetes NuGet. Después de abrir e iniciar sesión para registrar su cuenta, seleccione el enlace "Administrar mis paquetes de software" en la página "Mi cuenta" para ingresar a la página de administración:

Después de ingresar, podrá ver los paquetes de software que tenemos. lanzado:

Haga clic en el pequeño ícono de la papelera en el lado izquierdo de DaxnetNugetTest para ingresar a la página de lista. También puede ver el mensaje "No se admite la eliminación permanente de paquetes" en esta página.

Para eliminar un paquete de la lista de paquetes, simplemente elimine el gancho frente a la opción Listar DaxnetNugetTest 2.0.0.0 en los resultados de búsqueda y haga clic en el botón Guardar:

Resumen

Este artículo proporciona una breve introducción al uso de NuGet y le muestra una forma sencilla de publicar sus propias bibliotecas en un servidor NuGet como paquetes NuGet. NuGet es muy poderoso y los amigos interesados ​​pueden aprenderlo.