Using SchemaCrawler in Projects and Building SchemaCrawler

Pre-requisites for Building

SchemaCrawler Docker Image

The official SchemaCrawler Docker image is available on Docker Hub.

Using SchemaCrawler in Your Projects

Jars from the Central Repository

All of the SchemaCrawler jars are available on The Central Repository. They can be used as dependencies in Gradle or Apache Maven projects, or with any other build system that supports the Central Repository.

Apache Maven Projects

In order to use SchemaCrawler in your Apache Maven projects, add a dependency to SchemaCrawler in your pom.xml.

<dependencies>
  ...
  <dependency>
    <groupId>us.fatehi</groupId>
    <artifactId>schemacrawler</artifactId>
    <version>14.17.04</version>
  </dependency>
</dependencies>

Gradle Projects

In order to use SchemaCrawler in your Gradle projects, add a dependency to SchemaCrawler in your build.gradle.

dependencies {
  compile group: 'us.fatehi', name: 'schemacrawler', version: '14.17.04'
}

OSGi

The SchemaCrawler jar file is bundled as an OSGi bundle, and can be deployed into your OSGi Service Platform and your OSGi Bundle Repository.

Building From the Source Code

Apache Maven Build

The Apache Maven build is a comprehensive build that runs unit tests, constructs the SchemaCrawler jar, and can also create the project web-site.

The SchemaCrawler distribution will be created in the target of the schemacrawler-distrib directory.

Eclipse

Before importing the various SchemaCrawler projects into Eclipse, make sure that you have a successful Apache Maven build. Apache Maven will download all the dependencies needed to build SchemaCrawler.

Proprietary JDBC Drivers

The Apache Maven build depends on some proprietary JDBC drivers for IBM DB2 and Oracle. Download the IBM DB2 JDBC drivers place them in the schemacrawler-db2 source directory, and install them into your local Apache Maven repository using the provided install command. Similarly, download the Oracle JDBC drivers put them into the schemacrawler-oracle source directory, and install them locally.

Acknowledgements