W przypadku # 4, najbliższą rzeczą do uruchomienia Java z plikiem jar dla Twojej aplikacji jest nowa funkcja w Pythonie 2.6, wykonywalne pliki zip i katalogi .
python myapp.zip
Gdzie myapp.zip jest plikiem zip zawierającym __main__.py
plik, który jest wykonywany jako plik skryptu do wykonania. W pliku można również uwzględnić zależności pakietów:
__main__.py
mypackage/__init__.py
mypackage/someliblibfile.py
Możesz także wykonać jajko, ale inkantacja nie jest tak przyjemna:
PYTHONPATH=myapp.egg python -m myapp
rem Windows
set PYTHONPATH=myapp.egg
python -m myapp
Spowoduje to umieszczenie myapp.egg w ścieżce Pythona i użycie argumentu -m do uruchomienia modułu. Twój plik myapp.egg prawdopodobnie będzie wyglądał następująco:
myapp/__init__.py
myapp/somelibfile.py
Python będzie działał __init__.py
(powinieneś to sprawdzić __file__=='__main__'
w swojej aplikacji, aby użyć wiersza poleceń).
Pliki Egg to po prostu pliki zip, więc możesz być w stanie dodać __main__.py
do swojego jajka za pomocą narzędzia zip i uczynić go wykonywalnym w Pythonie 2.6 i uruchomić go tak, jak python myapp.egg
zamiast powyższej inkantacji, w której ustawiono zmienną środowiskową PYTHONPATH.
Więcej informacji o plikach wykonywalnych zip, w tym o tym, jak uczynić je bezpośrednio wykonywalnymi za pomocą shebang, można znaleźć w poście na blogu Michaela Foorda na ten temat .