Pour le n ° 4, la chose la plus proche de démarrer java avec un fichier jar pour votre application est une nouvelle fonctionnalité de Python 2.6, des fichiers zip exécutables et des répertoires .
python myapp.zip
Où myapp.zip est un zip contenant un __main__.py
fichier qui est exécuté en tant que fichier de script à exécuter. Vos dépendances de package peuvent également être incluses dans le fichier:
__main__.py
mypackage/__init__.py
mypackage/someliblibfile.py
Vous pouvez également exécuter un œuf, mais l'incantation n'est pas aussi agréable:
# Bourn Shell and derivatives (Linux/OSX/Unix)
PYTHONPATH=myapp.egg python -m myapp
rem Windows
set PYTHONPATH=myapp.egg
python -m myapp
Cela place le myapp.egg sur le chemin Python et utilise l'argument -m pour exécuter un module. Votre myapp.egg ressemblera probablement à quelque chose comme:
myapp/__init__.py
myapp/somelibfile.py
Et python fonctionnera __init__.py
(vous devriez vérifier que__file__=='__main__'
dans votre application pour une utilisation en ligne de commande).
Les fichiers Egg ne sont que des fichiers zip, vous pourrez donc peut-être ajouter __main__.py
à votre œuf avec un outil zip et le rendre exécutable en python 2.6 et l'exécuter commepython myapp.egg
au lieu de l'incantation ci-dessus où la variable d'environnement PYTHONPATH est définie.
Plus d'informations sur les fichiers zip exécutables, y compris comment les rendre directement exécutables avec un shebang, peuvent être trouvées sur le blog de Michael Foord sur le sujet .