Tsubakuro needs JDK 17 to build.
Note: The build is configured with release = 11 in Gradle, which means the compiled bytecode is compatible with Java 11 or later. While JDK 17 is required for the build environment, the resulting JAR files can run on Java 11 and above.
Tsubakuro needs to install several packages for Native Libarary builds. See Dockerfile section.
FROM ubuntu:22.04
RUN apt update -y && apt install -y git build-essential cmake libboost-system-dev openjdk-17-jdkBuild java libraries(jar) and native shared libraries(so).
cd ${ProjectTopDirectory}
./gradlew build
where ${ProjectTopDirectory} is a directory created by clone of the tsubakuro repository in git (https://github.com/project-tsurugi/tsubakuro).
Build only java libraries and skip testing and building native libraries.
./gradlew assemble -PskipBuildNative
Build and deploy the java and native libraries into Maven Local Repository.
./gradlew PublishToMavenLocal
Build and deploy only the java libraries into Maven Local Repository.
./gradlew PublishToMavenLocal -PskipBuildNative
Generate Javadoc for whole Tsubakuro classes in directory ${ProjectTopDirectory}/build/docs/javadoc-all.
cd ${ProjectTopDirectory}
./gradlew allJavadoc
Generated in directory ${ProjectTopDirectory}/build/docs/javadoc-all
Generate Javadoc for Tsubakuro client API in directory ${ProjectTopDirectory}/build/docs/javadoc-client-api.
cd ${ProjectTopDirectory}
./gradlew clientApiJavadoc
To use on Gradle, add Tsubakuro libraries and SLF4J implementation library to dependencies.
dependencies {
implementation 'com.tsurugidb.tsubakuro:tsubakuro-session:1.0.0'
implementation 'com.tsurugidb.tsubakuro:tsubakuro-connector:1.0.0'
implementation 'org.slf4j:slf4j-simple:1.7.32'
}