Skip to content
Fetching contributors…
Cannot retrieve contributors at this time
80 lines (55 sloc) 2.84 KB
Running Django on Jython
.. index:: Jython, Java, JVM
.. admonition:: Python 2.6 support
Django 1.5 has dropped support for Python 2.5. Until Jython provides a new
version that supports 2.6, Django 1.5 is no more compatible with Jython.
Please use Django 1.4 if you want to use Django over Jython.
Jython_ is an implementation of Python that runs on the Java platform (JVM).
Django runs cleanly on Jython version 2.5 or later, which means you can deploy
Django on any Java platform.
This document will get you up and running with Django on top of Jython.
.. _jython:
Installing Jython
Django works with Jython versions 2.5b3 and higher. Download Jython at
Creating a servlet container
If you just want to experiment with Django, skip ahead to the next section;
Django includes a lightweight Web server you can use for testing, so you won't
need to set up anything else until you're ready to deploy Django in production.
If you want to use Django on a production site, use a Java servlet container,
such as `Apache Tomcat`_. Full JavaEE applications servers such as `GlassFish`_
or `JBoss`_ are also OK, if you need the extra features they include.
.. _`Apache Tomcat`:
.. _GlassFish:
.. _JBoss:
Installing Django
The next step is to install Django itself. This is exactly the same as
installing Django on standard Python, so see
:ref:`removing-old-versions-of-django` and :ref:`install-django-code` for
Installing Jython platform support libraries
The `django-jython`_ project contains database backends and management commands
for Django/Jython development. Note that the builtin Django backends won't work
on top of Jython.
.. _`django-jython`:
To install it, follow the `installation instructions`_ detailed on the project
Web site. Also, read the `database backends`_ documentation there.
.. _`installation instructions`:
.. _`database backends`:
Differences with Django on Jython
.. index:: JYTHONPATH
At this point, Django on Jython should behave nearly identically to Django
running on standard Python. However, are a few differences to keep in mind:
* Remember to use the ``jython`` command instead of ``python``. The
documentation uses ``python`` for consistency, but if you're using Jython
you'll want to mentally replace ``python`` with ``jython`` every time it
* Similarly, you'll need to use the ``JYTHONPATH`` environment variable
instead of ``PYTHONPATH``.
Jump to Line
Something went wrong with that request. Please try again.