Création de packages natifs
Un package natif contient des binaires natifs au lieu d’assemblys managés, ce qui lui permet d’être utilisé dans des projets C++ (ou similaires). (Consultez Packages C++ natifs dans la section Consommer.)
Pour être consommable dans un projet C++, un package doit cibler le framework native
. Actuellement, aucun numéro de version n’est associé à ce framework car NuGet traite tous les projets C++ de la même façon.
Remarque
Veillez à inclure natif dans la section <tags>
de votre .nuspec
pour aider les autres développeurs à trouver votre package en recherchant cette étiquette.
Les packages NuGet natifs ciblant native
fournissent ensuite des fichiers dans des dossiers \build
, \content
et \tools
; \lib
n’est pas utilisé dans ce cas (NuGet ne peut pas ajouter directement des références à un projet C++). Un package peut également inclure des cibles et des fichiers props dans \build
que NuGet va automatiquement importer dans les projets qui consomment le package. Ces fichiers doivent être nommés de la même façon que l’ID de package et porter des extensions .targets
et/ou .props
. Par exemple, le package Microsoft.Web.WebView2 inclut un fichier Microsoft.Web.WebView2.targets
dans son dossier \build
.
Le dossier \build
peut être utilisé pour tous les packages NuGet et pas simplement les packages natifs. Le dossier \build
respecte les frameworks cibles à l’instar des dossiers \content
, \lib
et \tools
. Cela signifie que vous pouvez créer un dossier \build\net40
et un dossier \build\net45
pour que NuGet importe les fichiers de propriétés et de cibles appropriés dans le projet. (L’utilisation de scripts PowerShell pour importer des cibles MSBuild n’est pas nécessaire.)