jNeuroML is a Free/Open Source Java tool for working with LEMS and NeuroML 2. It includes the jnml command line application, and can also be used as a Java library.

With jNeuroML you can:

  • Validate NeuroML v1.8.1 and v2.x files

  • Simulate NeuroML 2 models

  • Export NeuroML 2 and LEMS files to many formats such as Neuron, Brian, Matlab, etc.

  • Import other languages into LEMS (e.g. SBML)

  • Visualise NeuroML models and simulations

Quick start#

Install the Java Runtime Environment#

Since jNeuroML is written in Java, you will need a Java Runtime Environment (JRE) installed on your system. On most Linux systems Free/Open source OpenJDK runtime environment is already pre-installed. You can also install Oracle’s proprietary Java platform from their download page if you prefer. Please refer to your operating system’s documentation to install a JRE.

Installation using pre-compiled JAR#

jNeuroML is provided as a pre-compiled ready-to-use Java JAR file that can be used on any computer that has Java installed. Please download it from the GitHub release page and unzip (extract) it in a preferred folder on your computer:

cd <folder where you downloaded the jNeuroML zip file>
unzip jNeuroML.zip

This will extract the zip file to a new folder which will contain the pre-compiled JAR file and runner scripts:

ls jNeuroMLJar/
jNeuroML-0.10.2-jar-with-dependencies.jar  jnml  jnml.bat  README

Installation on Fedora Linux#

On Fedora Linux systems, the NeuroFedora community provides jNeuroML as a package in their extras repository and can be installed using the following commands:

sudo dnf copr enable @neurofedora/neurofedora-extra
sudo dnf install jneuroml


Information on usage of the jnml command line application can be found with the -h option:

jnml -h

 jNeuroML v0.10.1

    jnml LEMSFile.xml
           Load LEMSFile.xml using jLEMS, parse it and validate it as LEMS, and execute the model it contains

    jnml LEMSFile.xml -nogui
           As above, parse and execute the model and save results, but don't show GUI


API documentation#

The jNeuroML API is self documented. Please refer to the various packages to learn their usage:

Getting help#

For any questions regarding jNeuroML, please open an issue on the GitHub issue tracker here. Any bugs and feature requests can also be filed there.

You can also use any of the communication channels of the NeuroML community.


jNeuroML is developed on GitHub at NeuroML/jNeuroML under the LPGL-3.0 license. The repository contains the complete source code along with instructions on building/installing jNeuroML. Please follow the instructions there to build jNeuroML from source.

Nightly (pre-release) jar builds:#


Please note that these JARs are considered experimental and should only be used for testing purposes.

In case you want to use a development (un-released) version of jNeuroML, you can download a development build following the steps below. You will need to have the Subversion tool installed on your system.

svn checkout svn://svn.code.sf.net/p/neuroml/code/jNeuroMLJar
cd jNeuroMLJar