2010-09-04 4 views
7

Quelles sont les offres actuelles pour la gestion de paquets .NET. Lequel utilisez-vous et quels sont les avantages et les inconvénients?.NET Package Management

Quelques exemples là-bas aujourd'hui sont:

Pour éviter tout doute, je fais référence à emballer les systèmes de gestion tels que gem, apt-get et dpkg .

+0

Un article connexe brève mais décente est disponible ici: http://hyr.mn/post/.NET-Packages-for-Great-Good –

+1

Je collerais avec OpenWrap –

+0

un diff très complet entre ces deux http: //stackoverflow.com/questions/4256994/openwrap-vs-nuget – roundcrisis

Répondre

12

NuGet (anciennement NuPack) est un système de gestion des paquets libre, développeur open source concentrée pour la

.NET
+1

FYI En étant renommé en "NuGet" en raison d'un conflit de nommage: http://feeds.haacked.com/~r/haacked/~3/G8vIGk7K_3I/nupack-is-now-nuget.aspx – Richard

+2

Désolé mais nuget ne résout pas problème de gestion des dépendances. Je l'appellerais outil de téléchargement de dépendance. –

3

Un autre gestionnaire de paquets qui est la plupart du temps mort est Horn. Même si le développement a pour la plupart cessé maintenant, je pense que c'est/était un projet intéressant.

Il a fallu une approche intéressante à la gestion des paquets, basée sur la compilation à partir du code source d'abord au lieu de s'appuyer uniquement sur les paquets binaires, de manière similaire à gentoo portage's ebuild. Cela donne au développeur la liberté ultime de mélanger et assortir les versions de bibliothèque (au lieu d'attendre que les responsables du projet mettent officiellement à jour leurs dépendances), mais comme ils disent "avec une grande puissance vient une grande responsabilité", il appartient également au développeur de s'assurer que la pile qu'il compile fonctionne. Bien sûr, vous pouvez jouer en toute sécurité et au lieu de tout construire à partir du tronc, vous pouvez corriger les versions de dépendances dans vos descripteurs (par exemple, il y a un descripteur Castle Windsor trunk et un autre pour Windsor 2.1). Pour ceux qui ne voulaient pas tout construire à partir de source (ce qui est naturellement un processus très lent), il y avait un serveur sur hornget.net qui agissait comme un serveur d'intégration continue et fournissait des paquets binaires.

+0

La chose est très souvent que vous ne pouvez pas compiler votre dépendance car elle nécessite un dev spécial/bibliothèques/plate-forme etc. –

+0

@aloneguid: ce n'est pas le cas dans les projets .NET OSS. –

+0

C'est. Toute dépendance sur dll/so natif rend le référencement du code source pratiquement impossible. –

2

Puisque vous avez fait référence à des systèmes de gestion de paquets qui sont orientés vers la machine, je pensais que je mentionnerait chocolatey, qui est comme apt-get mais pour Windows. FYI: Je suis l'un des gars de Nu/NuGet et j'ai inventé chocolatey pour ce que je n'ai pas vu venir de Ruby Gems quand nous sommes passés à NuGet (qui étaient les gemmes de type exécutable, NuGet est vraiment pour les bibliothèques et code source, pas les produits/outils/applications qui sortent de l'autre côté de la source). Depuis lors, chocolatey a pris de l'ampleur pour prendre en charge l'exécution de PowerShell, ce qui vous permet de faire à peu près n'importe quoi sur Windows.

+0

Cela semble intéressant. Je vérifierai. Merci. –