Awesome Open Source
Awesome Open Source

English | 简体中文

Alibaba Cloud SDK for Java

Latest Stable Version

The Alibaba Cloud SDK for Java allows you to access Alibaba Cloud services such as Elastic Compute Service (ECS), Server Load Balancer (SLB), and CloudMonitor. You can access Alibaba Cloud services without the need to handle API related tasks, such as signing and constructing your requests.

This document introduces how to obtain and call Alibaba Cloud SDK for Java.

If you have any problem while using Alibaba Cloud SDK for Java, please submit an issue.


  • To use Alibaba Cloud SDK for Java, you must have an Alibaba Cloud account as well as an AccessKey ID and an AccessKey Secret. Create and view your AccessKey on the RAM console or contact your system administrator.

  • To use the Alibaba Cloud SDK for Java to access the APIs of a product, you must first activate the product on the Alibaba Cloud console if required.

  • The Alibaba Cloud Java SDK requires JDK 1.6 or later.


If you use Apache Maven to manage Java projects, you only need to add corresponding dependencies to the pom.xml files of the projects. You can download the Maven dependencies of different cloud products in Alibaba Cloud developer resources.

You must install aliyun-java-sdk-core library no matter which product development kit you want to use. For example, to call the ECS SDK, you need to install aliyun-java-sdk-core library and aliyun-java-sdk-ecs library .

To use the Ecs SDK as an example, you only need to declare the following two dependencies in the pom.xml file.


If maven is not downloading jar packages from a central repository, you need to add these dependencies in the pom.xml file, or a NoClassDefFoundError exception will be reported



Troubleshoot Provide OpenAPI diagnosis service to help developers locate quickly and provide solutions for developers through RequestID or error message.

Quick Examples

The following code example shows the three main steps to use Alibaba Cloud SDK for Java :

  1. Create and initialize a DefaultAcsClient instance.

  2. Create an API request and set parameters.

  3. Initiate the request and handle the response or exceptions.

package com.testprogram;
import com.aliyuncs.profile.DefaultProfile;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.ecs.model.v20140526.*;
public class Main {
    public static void main(String[] args) {
        // Create and initialize a DefaultAcsClient instance
        DefaultProfile profile = DefaultProfile.getProfile(
            "<your-region-id>",          // The region ID
            "<your-access-key-id>",      // The AccessKey ID of the RAM account
            "<your-access-key-secret>"); // The AccessKey Secret of the RAM account
        IAcsClient client = new DefaultAcsClient(profile);
        // Create an API request and set parameters
        DescribeInstancesRequest request = new DescribeInstancesRequest();
        // Initiate the request and handle the response or exceptions
        DescribeInstancesResponse response;
        try {
            response = client.getAcsResponse(request);
            for (DescribeInstancesResponse.Instance instance:response.getInstances()) {
        } catch (ServerException e) {
        } catch (ClientException e) {



Opening an Issue, Issues not conforming to the guidelines may be closed immediately.


Detailed changes for each release are documented in the release notes.


Please make sure to read the Contributing Guide before making a pull request.




Copyright (c) 2009-present, Alibaba Cloud All rights reserved.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
java (30,084
sdk (485
client (367
maven (168
alibaba (37
alibabacloud (17

Find Open Source By Browsing 7,000 Topics Across 59 Categories