Project Structure

The SymmetricDS software package consists of a set of projects, with each project repesenting a layer of functionality. Each project is in a separate folder with source code that builds into a library.

Version 3.x

Project Name Description
symmetric-parent Parent POM project contains all the dependencies and versions, which the other projects inherit from
symmetric-assemble POM project used to build and assemble the distributable files
symmetric-core Java project with the core classes
symmetric-csv Reads and writes comma-separated-value (CSV) input and output.
symmetric-db Accesses a database using SQL to create tables, alter tables, and query data
symmetric-io Contains processors for reading, writing, and transforming data
symmetric-jdbc Extends the symmetric-db functions to access a database through JDBC to create database triggers and query data
symmetric-server Server classes to run the engine as a web server and receive synchronization requests
symmetric-util Common utilities classes

Version 2.x

Project Name Description
symmetric-parent Parent POM project contains all the dependencies and versions, which the other projects inherit from
symmetric-assemble POM project used to build and assemble the distributable files
symmetric-core Java project with the core classes
symmetric-csv Reads and writes comma-separated-value (CSV) input and output.
symmetric-ddl Generates data definition language (DDL) that creates and alters tables in the database.
symmetric-server Server classes to setup database triggers, run as a web server, and synchronize data with other nodes

Maven POM Dependency

You can use SymmetricDS in your project by referencing the library as a dependency. If you are using Maven, you can list the libraries you need in your project POM, like this:

<dependency>
    <groupId>org.jumpmind.symmetric</groupId>
    <artifactId>symmetric-server</artifactId>
    <version>2.5.0</version>
</dependency>

Copyright © 2014 JumpMind, Inc. All rights reserved. Privacy Policy / Terms of Service