- Notifications
You must be signed in to change notification settings - Fork32
Java SDK for Optimizely Feature Experimentation and Optimizely Full Stack (legacy).
License
optimizely/java-sdk
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
This repository houses the Java SDK for use with Optimizely Feature Experimentation and Optimizely Full Stack (legacy).
Optimizely Feature Experimentation is an A/B testing and feature management tool for product development teams that enables you to experiment at every step. Using Optimizely Feature Experimentation allows for every feature on your roadmap to be an opportunity to discover hidden insights. Learn more atOptimizely.com, or see thedeveloper documentation.
Optimizely Rollouts isfree feature flags for development teams. You can easily roll out and roll back features in any application without code deploys, mitigating risk for every feature on your roadmap.
Refer to theJava SDK's developer documentation for detailed instructions on getting started with using the SDK.
Java 8 or higher versions.
The Java SDK is distributed through Maven Central and is created with source and target compatibility of Java 1.8. Thecore-api andhttpclient packages areoptimizely-sdk-core-api andoptimizely-sdk-httpclient, respectively.
core-api requiresorg.slf4j:slf4j-api:1.7.16 and a supported JSON parser.We currently integrate withJackson,GSON,json.org, andjson-simple; if any of those packages are available at runtime, they will be used bycore-api. If none of those packages are already provided in your project's classpath, one will need to be added.
core-httpclient-impl is an optional dependency that implements the event dispatcher and requiresorg.apache.httpcomponents:httpclient:4.5.2.
NOTE
Optimizely previously distributed the Java SDK through Bintray/JCenter. But, as of April 27, 2021,Bintray/JCenter will become a read-only repository indefinitely. The publish repository has been migrated toMavenCentral for the SDK version 3.8.1 or later.
repositories { mavenCentral() jcenter()}dependencies { compile 'com.optimizely.ab:core-api:{VERSION}' compile 'com.optimizely.ab:core-httpclient-impl:{VERSION}' // The SDK integrates with multiple JSON parsers, here we use Jackson. compile 'com.fasterxml.jackson.core:jackson-core:2.7.1' compile 'com.fasterxml.jackson.core:jackson-annotations:2.7.1' compile 'com.fasterxml.jackson.core:jackson-databind:2.7.1'}See the Optimizely Feature Experimentationdeveloper documentation to learn how to set up your first Java project and use the SDK.
You can run all unit tests with:
./gradlew testWe utilizeSpotBugs to identify possible bugs in the SDK. To run the check:
./gradlew checkJMH benchmarks can be run through gradle:
./gradlew core-api:jmhResults are generated in$buildDir/reports/jmh.
Please seeCONTRIBUTING.
First-party code (under core-api/ and core-httpclient-impl) is copyright Optimizely, Inc. and contributors, licensed under Apache 2.0.
This software incorporates code from the following open source projects:
Copyright © 2004-2017 QOS.ch
License (MIT):https://www.slf4j.org/license.html
Jackson Annotationshttps://github.com/FasterXML/jackson-annotations
License (Apache 2.0):https://github.com/FasterXML/jackson-annotations/blob/master/src/main/resources/META-INF/LICENSE
Gsonhttps://github.com/google/gson
Copyright © 2008 Google Inc.
License (Apache 2.0):https://github.com/google/gson/blob/master/LICENSE
JSON-javahttps://github.com/stleary/JSON-java
Copyright © 2002 JSON.org
License (The JSON License):https://github.com/stleary/JSON-java/blob/master/LICENSE
JSON.simplehttps://code.google.com/archive/p/json-simple/
Copyright © January 2004
License (Apache 2.0):https://github.com/fangyidong/json-simple/blob/master/LICENSE.txt
Jackson Databindhttps://github.com/FasterXML/jackson-databind
License (Apache 2.0):https://github.com/FasterXML/jackson-databind/blob/master/src/main/resources/META-INF/LICENSE
Gsonhttps://github.com/google/gson
Copyright © 2008 Google Inc.
License (Apache 2.0):https://github.com/google/gson/blob/master/LICENSE
Apache HttpClienthttps://hc.apache.org/httpcomponents-client-ga/index.html
Copyright © January 2004
License (Apache 2.0):https://github.com/apache/httpcomponents-client/blob/master/LICENSE.txt
About
Java SDK for Optimizely Feature Experimentation and Optimizely Full Stack (legacy).
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.