从python(jython)wsgi应用程序汇编war文件
snakefight的Python项目详细描述
毒蛇大战
snakefirt从python(jython)wsgi应用程序生成WAR files, 适合部署到java Servlet containers。
创建WAR文件
snakefirt提供了一个新的distutils命令:bdist_war。
要创建一个war文件,请创建一个web.xml部署描述符(它将 通常为实际的Servlet使用modjy库并运行:
$ jython setup.py bdist_war --web-xml web.xml
毒蛇大战可以自动生成web.xml(利用modjy) 粘贴样式项目(那些支持paste.app_factory入口点的项目), 通过指定--paste-config选项在 配置文件,使用--paste-app-name选项(默认为main):
$ jython setup.py bdist_war --paste-config production.ini --paste-app-name cascade
要在war的WEB-INF/lib目录中包含单独的.jar文件, 为--include-jars选项指定以逗号分隔的jar列表:
$ jython setup.py bdist_war --include-jars jasper-runtime-5.5.9.jar,lucene-core-2.4.jar \ > --web-xml web.xml
与任何distutils命令一样,选项也可以在项目的 setup.cfg:
[bdist_war] paste-config = production.ini include-jars = jasper-runtime-5.5.9.jar lucene-core-2.4.jar
也可以从cpython(至少2.5版)运行snakefright,只要 JYTHON_HOME已指定:
$ jython setup.py bdist_war --web-xml web.xml --jython-home=~/jython2.5b2
其他选项:
- --war-prefix要生成的WAR文件的前缀
- --no-jython不包括Jython发行版
待办事项
添加选项:
- 排除要求:排除某些鸡蛋
- 静态文件:提供公共文件的目录列表(通过 org.jruby.webapp.FileServlet)
- 指定modjy选项
- –解包:不要压缩WAR文件
支持:
- 非设置工具应用?(像django应用程序一样)django-jython已经处理 Django但理想情况下我们会共享代码
变更日志
0.5(2011-12-10)
- 通过PIP固定安装。
0.4(2009-07-15)
- 重新排序自动生成的web.xml子标记以获得更好的 验证。
- 使用实际的分发名称(不是鸡蛋保险箱名称)进行战争 文件名。
- 在移动之前关闭war文件句柄,特别是对于windows。
0.3(2009-03-13)
- 添加了--include-jars选项
0.2(2009-03-10)
- 轻松安装应用程序现在是第一步
0.1(2009-03-08)
- 初始版本