This is the common SDK for the Eppo JVM SDKs. It provides a set of classes and interfaces that are used by the SDKs to interact with the Eppo API. You should probably not use this library directly and instead use the Android or JVM SDKs.
dependencies {
implementation 'cloud.eppo:sdk-common-jvm:4.0.0'
}For publishing a release locally, follow the steps below.
- Generate a user token on
s01.oss.sonatype.org; - Configure a GPG key for signing the artifact. Don't forget to upload it to the key server;
- Make sure you have the following vars in your
~/.gradle/gradle.propertiesfile:ossrhUsername- User token username for Sonatype generated in step 1ossrhPassword- User token password for Sonatype generated in step 1signing.keyId- GPG key ID generated in step 2signing.password- GPG key password generated in step 2signing.secretKeyRingFile- Path to GPG key file generated in step 2
Once you have the prerequisites, follow the steps below to release a new version:
- Bump the project version in
build.gradle - Run
./gradlew publish - Follow the steps in this page to promote your release
If you would like to live on the bleeding edge, you can try running against a snapshot build. Keep in mind that snapshots represent the most recent changes on master and may contain bugs.
repositories {
maven {
url "https://central.sonatype.com/repository/maven-snapshots/"
}
}
dependencies {
implementation 'cloud.eppo:sdk-common-jvm:X.Y.Z-SNAPSHOT'
}Snapshots are published automatically after each push to the main branch.
To publish a snapshot from a branch that hasn't been merged to main yet (e.g., for testing in downstream SDKs):
-
Push your branch to the
snapshot/*namespace:# From your feature branch git push origin HEAD:snapshot/my-feature # Or push an existing branch git push origin my-branch:snapshot/my-feature
-
This triggers the snapshot publish workflow, which will:
- Run tests
- Build and sign artifacts
- Deploy to Maven Central Snapshots
-
Monitor the workflow at: Actions > Publish SDK Snapshot
-
Once published, use the snapshot in downstream projects by updating the version in
build.gradle.
Note: The snapshot/* branch is only used to trigger the publish workflow. You can delete it after the snapshot is published:
git push origin --delete snapshot/my-feature