Je suis un développeur Java/python débutant) et il me manque des fonctionnalités maven, en particulier la gestion des dépendances et l’automatisation de la compilation (je veux dire que vous ne construisez pas, mais comment créer un paquetage pour. déploiement?)
Existe-t-il un équivalent python pour obtenir ces fonctionnalités?)
Note: J'utilise python 2.x
Merci.
Python utilise distutils et setuptools pour la dépendance et l’emballage.
Voici un tutoriel qui explique les bases: http://docs.activestate.com/activepython/3.2/diveintopython3/html/packaging.html
En bref, vous aurez le fichier setup.py, qui contient des informations de dépendance et de compilation/installation de scripts, et vous pourrez créer des oeufs, des archives dist, des archives binaires, etc.
Il n'y a pas de correspondance directe. Cependant, le plus proche que vous pouvez obtenir:
Les autres offres sont des sous-ensembles de Maven/zc.buildout:
Vous connaissez probablement les scripts Ant et Shell, vous pouvez donc également vérifier ces Python:
Je voudrais souligner PyBuilder qui est fortement inspiré de maven mais utilise python au lieu de XML pour la configuration, il est donc réellement lisible, à mon humble avis.
Il existe un plugin pour la gestion des dépendances (utilise pip sous le capot et fait la distinction entre les dépendances de construction et d'exécution) et, comme dans maven, vous pouvez exécuter le cycle de vie complet de la génération à l'aide d'une seule commande.
Pour le déploiement, en plus de distutils/setuptoos, jetez également un coup d'oeil au paquet de pip (utilise setuptools en dessous). Il peut restaurer les installations ayant échoué et également désinstaller (un élément manquant dans easy_install/setuptools). En outre, vous pouvez spécifier des dépendances via un fichier texte d'exigences.
Il est bon d'utiliser virtualenv pour créer un environnement de projet autonome et d'utiliser pip/easy_install pour gérer les dépendances.