Skip to content

Latest commit

 

History

History
75 lines (49 loc) · 2.1 KB

developers.md

File metadata and controls

75 lines (49 loc) · 2.1 KB

GMA Developer's Guide

Building the Project

Fork and clone the repository if haven't done so already

git clone https://github.com/{username}/datahub-gma.git

Change into the repository's root directory

cd datahub-gma

Use gradle wrapper to build the project

./gradlew build

If you are using Mac with Apple chip, there are additional steps required.

Install MariaDB.

brew install mariadb

Uncomment the following three lines in EmbeddedMariaInstance.java:

configurationBuilder.setBaseDir("/opt/homebrew");
configurationBuilder.setUnpackingFromClasspath(false);
configurationBuilder.setLibDir(System.getProperty("java.io.tmpdir") + "/MariaDB4j/no-libs");

Now you can build the project.

IDE Support

The recommended IDE for DataHub development is IntelliJ IDEA. You can run the following command to generate or update the IntelliJ project file:

./gradlew idea

Open datahub.ipr in IntelliJ to start developing!

For consistency please import and auto format the code using LinkedIn IntelliJ Java style.

Common Build Issues

Getting Unsupported class file major version 57

You're probably using a Java version that's too new for gradle. Run the following command to check your Java version

java --version

While it may be possible to build and run DataHub using newer versions of Java, we currently only support Java 1.8 (aka Java 8). Plan for Java 11 migration is being discussed in this issue.

Getting cannot find symbol error for javax.annotation.Generated

Similar to the previous issue, please use Java 1.8 to build the project.

You can install multiple version of Java on a single machine and switch between them using the JAVA_HOME environment variable. See this document for more details.