Start Scripts

From BaseX Documentation
Revision as of 23:00, 15 April 2012 by CG (talk | contribs)
Jump to navigation Jump to search

The following scripts, which are mentioned on the Startup and Startup Options pages, are also included in our official Windows and ZIP release files, and available in our GitHub repository:

  • The installers automatically add the project’s bin directory to your path environment.
  • Otherwise, you can manually add the bin directory to your PATH environment variable.

BaseX Main Package

The following scripts launch the standalone version of BaseX. Please replace the class name in org.basex.BaseX with either BaseXClient, BaseXServer, or BaseXGUI to run the client, server or GUI version.

Windows: basex.bat

@setlocal
@echo off

REM Path to this script
set PWD=%~dp0

REM Paths to distributed JAR archives or class files
set BASEX=basex.jar

REM Options for virtual machine
set VM=-Xmx512m

REM Classpath
set LIB=%PWD%/../lib
set CP=%BASEX%;%LIB%/lucene-analyzers-3.0.2.jar;%LIB%/tagsoup-1.2.jar;%LIB%/snowball.jar

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

Linux/Mac: basex

#!/bin/bash

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

# Core and library classes
CP="$BX/BaseX.jar"
CP="$CP$(for JAR in "$BX"/lib/*.jar; do echo -n ":$JAR"; done)"

# Options for virtual machine
VM=-Xmx512m

general_args=( )
vm_args=( )
while (( $# )) ; do
	if [[ $1 = "-X" ]] ; then
		vm_args+=( "$2" )
		shift 2
	else
		general_args+=( "$1" )
		shift
	fi
done

# Run code
java -cp "$CP" $VM "${vm_args[@]}" org.basex.BaseX "${general_args[@]}"

BaseX HTTP Server

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

Note: In Version 7.2, the BaseXHTTP start class will be moved from the org.basex.api package to org.basex.

Windows: basexhttp.bat

@echo off
setlocal

REM Path to this script
set PWD=%~dp0

REM Paths to distributed JAR archives or class files
set BASEX=%PWD%/basex.jar 
set BASEXAPI=%PWD%/basex-api.jar

REM Classpath
set LIB=%PWD%/../lib
set CP=%BASEX%;%BASEXAPI%;%LIB%/commons-beanutils-1.8.2.jar;%LIB%/commons-codec-1.4.jar;%LIB%/commons-fileupload-1.2.2.jar;%LIB%/commons-io-1.4.jar;%LIB%/commons-logging-1.1.1.jar;%LIB%/jdom-1.1.jar;%LIB%/jetty-6.1.26.jar;%LIB%/jetty-util-6.1.26.jar;%LIB%/log4j-1.2.14.jar;%LIB%/lucene-analyzers-3.0.2.jar;%LIB%/milton-api-1.6.4.jar;%LIB%/mime-util-2.1.3.jar;%LIB%/resolver.jar;%LIB%/servlet-api-2.5-20081211.jar;%LIB%/slf4j-api-1.5.8.jar;%LIB%/slf4j-log4j12-1.5.6.jar;%LIB%/snowball.jar;%LIB%/tagsoup-1.2.jar;%LIB%/xmldb-api-1.0.jar;%LIB%/xqj-api-1.0.jar

REM Options for virtual machine
set VM=-Xmx512m

REM Run code
java -cp "%CP%;." %VM% org.basex.api.BaseXHTTP %*

Linux/Mac: basexhttp

#!/bin/bash

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

# API, core, and library classes
CP="$BX/BaseX.jar$(printf ":%s" "$BX/BaseX.jar" "$BX/lib/"*.jar)"

# Options for virtual machine
VM=-Xmx512m

general_args=( )
vm_args=( )
while (( $# )) ; do
  if [[ $1 = "-X" ]] ; then
    vm_args+=( "$2" )
    shift 2
  else
    general_args+=( "$1" )
    shift
  fi
done

# Run code
java -cp "$CP" $VM "${vm_args[@]}" org.basex.BaseXHTTP "${general_args[@]}"

Changelog

Version 7.2

  • The BaseXHTTP start class will be moved from org.basex.api to org.basex.

Version 7.0

  • The basexjaxrx scripts have been replaced with the basexhttp scripts.