Database Reference
In-Depth Information
Check out the eXist-2.1 release tag from the repository. You can view all avail‐
able tags by running git tag -l . If you wish to track the latest version of eXist,
you need not check out a tag; instead, running git branch -a should show that
you are on the develop branch.
Build the eXist source code. By default, this builds the all target.
Remember that while it is, of course, possible to make distributions
and installers for eXist from the source code, you can also work
with eXist in place . You do so by checking out the source code,
building it, and then running it directly by using
$EXIST_HOME/bin/startup.sh (or $EXIST_HOME/bin/startup.bat
on Windows), or even installing eXist as a service (see “Installing
eXist as a Service” on page 405 ). A major advantage of this
approach is that you can easily update to a newer version of eXist
by using Git to pull changes if you are tracking the develop branch,
or by checking out a newer release tag when it becomes available.
Make sure to back up your config and database before switching
branches with Git!
Debugging eXist
If you are using one of the IDEs for which eXist provides project files (NetBeans,
IntelliJ, and Eclipse), then these projects are already set up to enable you to debug
either the eXist Java Admin Client or the eXist server. It is also worth remembering
that you can debug the Java Admin Client in embedded mode, which can sometimes
provide a simple mechanism for debugging the database core without your needing
to run the full server.
However, if you are not using one of the supported IDEs or wish to debug eXist code
that is running on a remote server, then your only real option is to use the Java
Debugging Wire Protocol (JDWP). It is also worth mentioning that each of the sup‐
ported IDEs functions as an excellent debugger when you're debugging eXist
remotely. JDWP supports using a TCP/IP socket to communicate between the appli‐
cation you are debugging and the debugger on all platforms; depending on how it's
configured, you can also run this across a network. Between the application that you
wish to debug and the debugger, JDWP can work in either direction. That is, you can
start up the JVM running your Java application that you wish to debug as either:
• A JDWP server that will listen for connection requests from a debugger
• A JDWP client that will connect to a remote debugger
Search WWH ::




Custom Search