Developing with Eclipse

From BaseX Documentation
Jump to navigation Jump to search

Installation

Prerequisites

  • BaseX is being developed with the [http:www.eclipse.org Eclipse] environment. Some style

guidelines are integrated in the sources of BaseX; they are being embedded as soon as you open the project.

  • The Subclipse Plugin is needed to check out the latest sources from our repository.
  • To work with packages other than the main project, the m2eclipse plugin is required to add Maven support to Eclipse.
  • Additional coding guidelines are defined via Checkstyle and can be integrated with the eclipse-cs plugin.

Check Out

To checkout BaseX, do the following:

  1. FileImport
  2. SVNCheck out Projects from SVN
  3. Enter https://svn.uni-konstanz.de/dbis/basex/trunk as repository
  4. Choose the project you like:
    1. basex is the main project
    2. api contains the BaseX APIs (JAX-RX, XQJ, XMLDB, and bindings in other languages)
    3. examples demonstrates some use cases for BaseX
    4. jax-rx represents the JAX-RX Interface
  5. Click Finish

Run BaseX with Eclipse

  1. Press RunRun…
  2. Create a new "Java Application" launch configuration
  3. Select "basex" as "Project"
  4. Choose a "Main class" (e.g., org.basex.BaseXGUI for the graphical user interface)
  5. Launch the project via Run

Compile & Run BaseX

If the standalone version of Maven is installed, you can run mvn compile in the project directory to compile BaseX. Should you wish to create / package your own jars you can do so by running mvn package. By adding the flag -DskipTests=true you can skip running the JUnit-tests.

Type in java -cp target/classes/org.basex.BaseX to run BaseX.

You can launch the following classes, which are all placed in the org.basex main package:

BaseX
console mode
BaseXServer
server instance, waiting for requests
BaseXClient
console mode, interacting with the server
BaseXGUI
graphical user interface

Moreover, try -h to have a look at the available command-line options. For example, you can evaluate XQuery expressions or process database commands without entering the console.