Start Scripts

Each BaseX Startup mode can be launched with its own Start Script which can in turn be used with its own range of Command-Line Options. The BaseX Windows and ZIP distributions readily include all Start Scripts.


 * We recommend you to manually add the bin directory of your BaseX directory to the PATH variable of your environment.
 * You can copy the start scripts to another location in your file system. After that, you should edit the scripts and assign the BaseX directory to the MAIN variable.
 * The Windows installer automatically adds the project’s bin directory to your path environment.
 * If you work with Maven, you can directly run the scripts in the basex-core/etc and basex-api/etc sub-directories of the project.

If BaseX terminates with an Out of Memory or Java heap space error, you can assign more RAM via the -Xmx flag (see below). The conservative value that was chosen in our distributions ensures that BaseX will also run on 32 bit JVMs.

=Standalone=

The following scripts launch the standalone version of BaseX:

Windows: basex.bat
 @echo off setLocal EnableDelayedExpansion

REM Path to core and library classes set MAIN=%~dp0/.. set CP=%MAIN%/BaseX.jar;%MAIN%/lib/*;%MAIN%/lib/custom/*

REM Options for virtual machine set BASEX_JVM=-Xmx1200m %BASEX_JVM%

REM Run code java -cp "%CP%" %BASEX_JVM% org.basex.BaseX %*

Linux/Mac: basex

 * 1) !/usr/bin/env bash

FILE="${BASH_SOURCE[0]}" while [ -h "$FILE" ] ; do SRC="$(readlink "$FILE")" FILE="$( cd -P "$(dirname "$FILE")" && \          cd -P "$(dirname "$SRC")" && pwd )/$(basename "$SRC")" done MAIN="$( cd -P "$(dirname "$FILE")/.." && pwd )"
 * 1) Path to this script

CP=$MAIN/BaseX.jar:$MAIN/lib/*:$MAIN/lib/custom/*:$CLASSPATH
 * 1) Core and library classes

BASEX_JVM="-Xmx2g $BASEX_JVM"
 * 1) Options for virtual machine (can be extended by global options)

java -cp "$CP" $BASEX_JVM org.basex.BaseX "$@"
 * 1) Run code

=GUI, Server, Client=

If you would like to launch the GUI, Server or Client version of BaseX, please replace the class name in  with either ,   or.

=HTTP Server=

The scripts for starting the HTTP server, which gives access to the REST, RESTXQ and WebDAV services, can be found below:

Windows: basexhttp.bat
 @echo off setLocal EnableDelayedExpansion

REM Path to core and library classes set MAIN=%~dp0/.. set CP=%MAIN%/BaseX.jar;%MAIN%/lib/*;%MAIN%/lib/custom/*

REM Options for virtual machine set BASEX_JVM=-Xmx1200m %BASEX_JVM%

REM Run code java -cp "%CP%" %BASEX_JVM% org.basex.BaseXHTTP %*

Linux/Mac: basexhttp

 * 1) !/usr/bin/env bash

FILE="${BASH_SOURCE[0]}" while [ -h "$FILE" ] ; do SRC="$(readlink "$FILE")" FILE="$( cd -P "$(dirname "$FILE")" && \          cd -P "$(dirname "$SRC")" && pwd )/$(basename "$SRC")" done MAIN="$( cd -P "$(dirname "$FILE")/.." && pwd )"
 * 1) Path to this script

CP=$MAIN/BaseX.jar:$MAIN/lib/*:$MAIN/lib/custom/*:$CLASSPATH
 * 1) API, core, and library classes

BASEX_JVM="-Xmx2g $BASEX_JVM"
 * 1) Options for virtual machine (can be extended by global options)

java -cp "$CP" $BASEX_JVM org.basex.BaseXHTTP "$@"
 * 1) Run code

=Included Start Scripts=

The BaseX Windows and ZIP distributions readily include the following Start Scripts:

For the BaseX HTTP and database server, there are also stop scripts available:

=Changelog=


 * Version 7.5


 * Updated: Static dependencies removed from Windows batch scripts.


 * Version 7.2


 * Updated: The BaseXHTTP start class moved from org.basex.api to org.basex.


 * Version 7.0


 * Updated: The basexjaxrx scripts have been replaced with the basexhttp scripts.