web-dev-qa-db-fra.com

Créer un paquet de nuget à partir de dll

Je souhaite créer un package NuGet qui ajoute plusieurs fichiers .dll en tant que références à mon projet.

J'ai un dossier avec 10 fichiers .dlls dedans.

Lorsque j'installe ceci via un nuget, je souhaite que ces fichiers soient ajoutés aux références du projet.

42
Danhol86

Je veux créer un paquet de nuget qui ajoute plusieurs .dll en tant que références à mon projet.

Je voudrais vous donner deux solutions pour y parvenir:

Tout d'abord, utilisez NuGet Package Explorer :

  1. Téléchargez le NuGet Package Explorer .
  2. Ouvrez l’Explorateur de paquets NuGet, sélectionnez le créer un nouveau paquet.
  3. Ajouter un dossier lib sur l'onglet contenu et ajoutez votre fichier dlls
  4. Enregistrez le package et installez-le dans le projet, vérifiez s'il ajoute des références.

NuGet Package Explorer GUI

Deuxièmement, comme le mentionne Lex Li, nous pourrions utiliser .nuspec pour emballer les assemblages :

  1. Téléchargez le nuget.exe .
  2. Créez un nouveau projet.
  3. Ouvrez une cmd et changez le chemin en nuget.exe
  4. Utilisez la ligne de commande: nuget spec "PathOfProject\TestDemo.csproj"
  5. Ouvrez le fichier TestDemo.csproj.nuspec, modifiez-le et ajoutez les assemblys sous forme de fichier. Voici mon fichier .nuspec:

    <?xml version="1.0"?>
    <package>
      <metadata>
        <id>TestDemo</id>
        <version>1.0.0</version>
        <authors>Tester</authors>
        <owners>Tester</owners>
        <requireLicenseAcceptance>false</requireLicenseAcceptance>
        <description>TestDemo</description>
        <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
        <copyright>Copyright 2017</copyright>
        <tags>Tag1 Tag2</tags>
      </metadata>
      <files>
        <file src="MultipleDll\*.*" target="lib\net461" />
      </files>
    </package>
    
  6. Utiliser la commande pack: nuget pack TestDemo.csproj.nuspec

  7. Ouvrez le package TestDemo par NuGet Package Explorer.

NuGet Package Explorer - built package output

J'espère que cela peut vous aider.

57
Leo Liu-MSFT

Je pense que la meilleure façon de créer des paquets NuGet est d'utiliser nuget.exe.

  1. Tout d’abord, téléchargez et installez nuget.exe ( https://www.nuget.org/downloads )
  2. Ensuite, allez dans le dossier de votre projet, appuyez sur shift + clic droit pour afficher la commande Invite
  3. Dans l'invite de commande, entrez

    nuget spec
    
  4. Vous allez maintenant avoir un fichier .nuspec. Ouvrez-le dans un éditeur et ajoutez l'identifiant, l'auteur, etc.

  5. La partie la plus importante est la balise files après la balise de métadonnées fermée.

    Vous pouvez définir toutes les dll ici comme ceci:

    <files>
       <file src="bin\Release\YourDll.dll" target="lib"></file>
    </files>
    
  6. Enfin, vous pouvez créer le fichier .nupkg avec cette commande:

    nuget pack 'Your_nuspec_file_name'
    

Cette vidéo sur Comment créer des paquets de nugets contient un tutoriel très utile et clair.

18
masehhat