Skip to content

temporalio/sdk-java

Folders and files

NameName
Last commit message
Last commit date
Apr 2, 2025
Jan 6, 2025
Mar 15, 2023
Jan 17, 2025
Mar 10, 2025
Jun 25, 2024
Feb 10, 2025
Feb 24, 2025
Jun 25, 2024
Apr 2, 2025
Mar 26, 2025
Nov 4, 2024
Apr 2, 2025
Jun 25, 2024
Apr 2, 2025
Apr 2, 2025
Sep 22, 2022
Jul 19, 2024
Apr 12, 2022
Feb 21, 2023
Jun 3, 2022
Jun 3, 2022
Jan 28, 2025
Feb 20, 2025
Oct 25, 2024
Oct 25, 2024
Jun 25, 2024
Apr 1, 2022

Repository files navigation

Temporal Java SDK Build status Coverage Status

Temporal is a Workflow-as-Code platform for building and operating resilient applications using developer-friendly primitives, instead of constantly fighting your infrastructure.

The Java SDK is the framework for authoring Workflows and Activities in Java. (For other languages, see Temporal SDKs.)

Java SDK:

Temporal:

Supported Java runtimes

Build configuration

Find the latest release of the Temporal Java SDK at maven central.

Add temporal-sdk as a dependency to your pom.xml:

<dependency>
  <groupId>io.temporal</groupId>
  <artifactId>temporal-sdk</artifactId>
  <version>N.N.N</version>
</dependency>

or to build.gradle:

compile group: 'io.temporal', name: 'temporal-sdk', version: 'N.N.N'

Protobuf 3.x vs 4.x

The Temporal Java SDK currently supports protobuf-java 3.x and 4.x. To support these, the Temporal Java SDK allows any protobuf library >= 3.25. Temporal strongly recommends using the latest protobuf-java 4.x library unless you absolutely cannot. If you cannot use protobuf-java 3.25 >=, you can try temporal-shaded which includes a shaded version of the protobuf-java library.

Contributing

We'd love your help in improving the Temporal Java SDK. Please review our contribution guidelines.

Snapshot release

We also publish snapshot releases during SDK development often under the version 1.x.0-SNAPSHOT. This allows users to test out new SDK features before an official SDK release.

Snapshot releases Find the latest snapsphot release.

To add Sonatype snapshot repository to your pom.xml:

<repositories>
    <repository>
        <id>oss-sonatype</id>
        <name>oss-sonatype</name>
        <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

Or to build.gradle:

repositories {
    maven {
        url "https://oss.sonatype.org/content/repositories/snapshots/"
    }
  ...
}

Note: Snapshot releases are not official release and normal backwards compatibility, stability or support does not apply

License

Copyright (C) 2022 Temporal Technologies, Inc. All Rights Reserved.

Copyright (C) 2012-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.

Modifications copyright (C) 2017 Uber Technologies, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this material except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.