4.7 KiB
type | title | linkTitle | weight | description | cascade | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
docs | Dapr Java SDK | Java | 1000 | Java SDK packages for developing Dapr applications |
|
Dapr offers a variety of packages to help with the development of Java applications. Using them you can create Java clients, servers, and virtual actors with Dapr.
Prerequisites
- [Dapr CLI]({{< ref install-dapr-cli.md >}}) installed
- Initialized [Dapr environment]({{< ref install-dapr-selfhost.md >}})
- JDK 11 or above - the published jars are compatible with Java 8:
- Install one of the following build tools for Java:
Import Dapr's Java SDK
Next, import the Java SDK packages to get started. Select your preferred build tool to learn how to import.
{{< tabs Maven Gradle >}}
{{% codetab %}}
For a Maven project, add the following to your pom.xml
file:
<project>
...
<dependencies>
...
<!-- Dapr's core SDK with all features, except Actors. -->
<dependency>
<groupId>io.dapr</groupId>
<artifactId>dapr-sdk</artifactId>
<version>1.12.2</version>
</dependency>
<!-- Dapr's SDK for Actors (optional). -->
<dependency>
<groupId>io.dapr</groupId>
<artifactId>dapr-sdk-actors</artifactId>
<version>1.12.2</version>
</dependency>
<!-- Dapr's SDK integration with SpringBoot (optional). -->
<dependency>
<groupId>io.dapr</groupId>
<artifactId>dapr-sdk-springboot</artifactId>
<version>1.12.2</version>
</dependency>
...
</dependencies>
...
</project>
{{% /codetab %}}
{{% codetab %}}
For a Gradle project, add the following to your build.gradle
file:
dependencies {
...
// Dapr's core SDK with all features, except Actors.
compile('io.dapr:dapr-sdk:1.12.2')
// Dapr's SDK for Actors (optional).
compile('io.dapr:dapr-sdk-actors:1.12.2')
// Dapr's SDK integration with SpringBoot (optional).
compile('io.dapr:dapr-sdk-springboot:1.12.2')
}
{{% /codetab %}}
{{< /tabs >}}
If you are also using Spring Boot, you may run into a common issue where the OkHttp
version that the Dapr SDK uses conflicts with the one specified in the Spring Boot Bill of Materials.
You can fix this by specifying a compatible OkHttp
version in your project to match the version that the Dapr SDK uses:
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>1.12.2</version>
</dependency>
Try it out
Put the Dapr Java SDK to the test. Walk through the Java quickstarts and tutorials to see Dapr in action:
SDK samples | Description |
---|---|
[Quickstarts]({{< ref quickstarts >}}) | Experience Dapr's API building blocks in just a few minutes using the Java SDK. |
SDK samples | Clone the SDK repo to try out some examples and get started. |
import io.dapr.client.DaprClient;
import io.dapr.client.DaprClientBuilder;
try (DaprClient client = (new DaprClientBuilder()).build()) {
// sending a class with message; BINDING_OPERATION="create"
client.invokeBinding(BINDING_NAME, BINDING_OPERATION, myClass).block();
// sending a plain string
client.invokeBinding(BINDING_NAME, BINDING_OPERATION, message).block();
}
- For a full guide on output bindings visit [How-To: Output bindings]({{< ref howto-bindings.md >}}).
- Visit Java SDK examples for code samples and instructions to try out output bindings.
Available packages
Client
Create Java clients that interact with a Dapr sidecar and other Dapr applications.
Workflow
Create and manage workflows that work with other Dapr APIs in Java.