Crear paquetes nativos
Un paquete nativo contiene binarios nativos en lugar de ensamblados administrados, lo que permite usarlo en proyectos de C++ (o similares). (vea Native C++ Packages [Paquetes nativos de C++] en la sección Consume [Consumir]).
Para poder usarse en un proyecto de C++, un paquete debe tener como destino la plataforma native
. Actualmente no hay ningún número de versión asociado a esta plataforma, ya que NuGet trata igual a todos los proyectos de C++.
Nota:
No olvide incluir native en la sección <tags>
del archivo .nuspec
para que otros desarrolladores puedan buscar el paquete mediante esa etiqueta.
Los paquetes nativos de NuGet que tienen como destino native
proporcionan archivos en las carpetas \build
, \content
y \tools
. En este caso no se usa \lib
(NuGet no puede agregar referencias directamente a un proyecto de C++). Un paquete también puede incluir archivos de destinos y propiedades en \build
que NuGet importará automáticamente a los proyectos que consuman el paquete. Esos archivos deben tener el mismo nombre que el identificador del paquete con las extensiones .targets
o .props
. Por ejemplo, el paquete Microsoft.Web.WebView2 incluye un archivo Microsoft.Web.WebView2.targets
en su carpeta \build
.
La carpeta \build
se puede usar para todos los paquetes de NuGet, no solo para los paquetes nativos. La carpeta \build
respeta las plataformas de destino igual que las carpetas \content
, \lib
y \tools
. Esto significa que puede crear una carpeta \build\net40
y una carpeta \build\net45
, y NuGet importará al proyecto los archivos de propiedades y destinos adecuados (no es necesario usar scripts de PowerShell para importar los destinos de MSBuild).