Para o nº 4, a coisa mais próxima de iniciar o java com um arquivo jar para seu aplicativo é um novo recurso no Python 2.6, arquivos zip executáveis e diretórios .
python myapp.zip
Onde myapp.zip é um zip contendo um __main__.py
arquivo que é executado como o arquivo de script a ser executado. As dependências do seu pacote também podem ser incluídas no arquivo:
__main__.py
mypackage/__init__.py
mypackage/someliblibfile.py
Você também pode executar um ovo, mas o encantamento não é tão bom:
# Bourn Shell and derivatives (Linux/OSX/Unix)
PYTHONPATH=myapp.egg python -m myapp
rem Windows
set PYTHONPATH=myapp.egg
python -m myapp
Isso coloca o myapp.egg no caminho do Python e usa o argumento -m para executar um módulo. Seu myapp.egg provavelmente será semelhante a:
myapp/__init__.py
myapp/somelibfile.py
E o python será executado __init__.py
(você deve verificar isso __file__=='__main__'
em seu aplicativo para uso na linha de comando).
Os arquivos Egg são apenas arquivos zip, então você pode adicionar __main__.py
ao seu egg com uma ferramenta zip e torná-lo executável em python 2.6 e executá-lo como ao python myapp.egg
invés do encantamento acima onde a variável de ambiente PYTHONPATH é definida.
Mais informações sobre arquivos zip executáveis, incluindo como torná-los executáveis diretamente com um shebang, podem ser encontradas no blog de Michael Foord sobre o assunto .