This is the uProtocol v1.6.0-alpha.5 Language Library for the Java programming language. The library is organized into packages that are described in SDK Packages below and organized by the layers of the protocol.
Each package folder contains a README.adoc
file that describes the purpose of the package and how to use it.
The library is available from [Maven Central](https://search.maven.org/artifact/org.eclipse.uprotocol/up-java) and can be added as a dependency to your Maven or Gradle project.
The following dependency needs to be added to your Maven POM file, setting `${uprotocol.version}` to the desired version of the library:
<dependency>
<groupId>org.eclipse.uprotocol</groupId>
<artifactId>up-java</artifactId>
<version>${uprotocol.version}</version>
</dependency>
Package | Purpose | Reference |
---|---|---|
Top level client-facing interfaces to communication with USubscription, UDiscovery, and UTwin services. |
||
Common implementation of communication messaging patterns (publisher, subscriber, RpcClient, RpcServer, etc..) that are built on top of the L1 transport interface (see below). |
||
Interface and data model for how to send() and receive() messages in a common way across various transport technologies (ex. zenoh, mqtt, http, etc…). the interface is implemented by transports (ex. up-transport-android-java), and the interface is then used to build the uProtocol layer 2 communication layer implementation. |
||
uProtocol addressing scheme (UUri) builders, validators, and serializers. |
Basics |
|
uProtocol unique identifier builders, validators, and serializers. |
Basics |
The library is built using the [Apache Maven](https://apache.org/maven) build system and is published to [Maven Central](https://search.maven.org/artifact/org.eclipse.uprotocol/up-java).
-
Clone the repository:
git clone --recurse-submodules https://github.com/eclipse-uprotocol/up-java.git
-
Navigate to the project directory:
cd up-java
-
Build the project using Maven:
mvn clean install