本文为您介绍在 JetBrains IDEs 中 Alibaba Cloud Developer Toolkit 插件的安装和使用。
安装插件
前提条件
安装 JetBrains 系列 IDE:IntelliJ IDEA、PyCharm、GoLand等。
版本要求:2022.2+以上版本。
本文以 Windows 的 IntelliJ IDEA 为例,为您介绍插件的两种安装方式:
方式一:通过插件市场下载安装
在IntelliJ IDEA顶部菜单栏右侧,选择,或通过顶部菜单栏左侧,选择。
在插件页面,单击Marketplace。
搜索 Alibaba Cloud Developer Toolkit ,单击安装。
单击应用,然后单击确定。
方式二:通过浏览器下载安装包
通过浏览器访问官方JetBrains Marketplace,下载插件压缩包到本地。
在IntelliJ IDEA顶部菜单栏右侧,选择,或通过顶部菜单栏左侧,选择。
在插件页面,选择,选中下载的压缩包(无需解压),完成安装。
验证结果
安装完成后,您可以在 IntelliJ IDEA 左侧菜单栏中看到 Toolkit 插件的快捷入口,即安装成功。
用户身份与凭证配置
正确的身份凭证配置是调用 API 的前提。目前该插件仅支持配置 AccessKey(简称AK)凭证。您可以通过以下两种方式进行配置。
方式一
单击左上角的New Profile或
图标。在 IntelliJ IDEA 顶部工具栏中单击用户图标打开 Alibaba Cloud Developer Tools 面板,在左侧面板顶部的下拉框中选择 New Profile 以创建新配置。
填写配置信息,包括Profile Name、RegionId及Access Key ID 和 Secret Access Key信息。请使用已有AccessKey或者参考查看RAM用户的AccessKey信息重新创建。请注意:为降低AccessKey泄露的风险,AccessKey Secret只在创建时显示一次,后续无法查看。请务必妥善保管。
重要由于阿里云账号(主账号)拥有资源的所有权限,其AK一旦泄露风险巨大,强烈不建议使用阿里云主账号AK。
单击添加配置。
在右下角会弹出添加 Profile 成功的对话框,然后通过单击左侧窗口中的下拉框,可以查看到已配置成功的用户,即添加成功。
单击Profile名称,即可切换身份。
方式二
如果您已安装并使用阿里云CLI,该插件会自动复用其配置。关于如何通过CLI配置身份与凭证的详情,请参见阿里云 CLI 配置凭证。
您可以通过单击左侧窗口中的下拉框或右下角状态栏,来切换或查看已有用户与凭证。
在左侧窗口的下拉框中,单击Profile名称,即可切换身份。
功能介绍
Alibaba Cloud Developer Toolkit 插件支持在 JetBrains IDEs 中快速查阅阿里云产品的 API,并提供 API 调试、生成 SDK、插入 SDK 示例代码等功能,让您更便捷地在 IDE 环境中访问阿里云服务。
云产品和 API 搜索
在插件的左侧导航栏中,提供了一个云产品的树状视图。支持搜索中英文产品名称快速导航到对应产品,或者单击云产品名称,打开对应的 API 列表并支持搜索目标 API。
在 Alibaba Cloud Developer Toolkit 插件左侧面板中,通过 Profile 选择器切换账号配置,在搜索框中输入产品关键词(如 ecs)并在产品树中选择目标云产品(如云服务器 ECS)。选中产品后,右侧面板将展示该产品的 API 列表,支持按关键词搜索 API(如输入 run 可匹配到 RunInstances、RunCommand 等),下方按功能分类(资源保障、块存储、镜像、安全组、云助手等)展示完整 API 目录。
API 文档查看
单击 API 打开一个新的窗口,并显示对应的 API 文档内容,文档包括接口说明、请求参数、响应参数和错误码等信息。
在 Alibaba Cloud Developer Toolkit 插件左侧 API 导航面板中搜索并选中目标产品(如云服务器 ECS),右侧打开对应 API 页面(如 DescribeRegions)。页面提供API 文档、示例代码、调试三个标签页。在API 文档标签页中可查看 API 入参信息(参数名称、类型、取值说明等),底部可通过下拉框选择服务地址,右上角单击去调试可快速发起 API 调试。
API 调试
通过身份验证后,该插件可支持 API 调试。
可对照 API 文档填写参数表单进行便捷的 API 调试,调试结果显示在 IDE 中,或单击去调试,快速跳转到OpenAPI门户控制台的API接口进行调试。
在左侧导航树搜索栏中输入关键词(如 ecs)并选中目标云产品(如云服务器 ECS),右侧面板展示所选 API 的详情,包含API 文档、示例代码、调试三个 Tab 页签。在参数表单中填写入参(如 RegionId、ImageId、InstanceType 等),选择服务地址后,单击底部调试按钮在 IDE 内发起调试,或单击清空参数、生成示例进行辅助操作。
SDK 代码示例的查看与插入
查看代码示例
填写参数后,将同步生成对应内容的示例代码,支持在 IDE 中快速打开示例代码进行编辑。
支持自动导入依赖(目前支持自动导入Maven依赖)。
单击安装方式和查看源码按钮可以获取安装依赖的方式和源码的信息。
通过插件面板选择语言(如 Java),单击生成示例按钮后,插件会自动生成 RunInstances 的 SDK 示例代码并导入到编辑器中。生成的示例代码如下:
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sample;
import com.aliyun.tea.*;
public class Sample {
/**
* 使用AK&SK初始化账号Client
* @param accessKeyId
* @param accessKeySecret
* @return Client
* @throws Exception
*/
public static com.aliyun.ecs20140526.Client createClient() throws xxx {
// 工程代码泄露可能会导致 AccessKey 泄露,并威胁账号下所有资源的安xxx
// 建议使用更安全的 STS 方式,更多鉴权访问方式请参见:https://hexxx
com.aliyun.teaopenapi.models.Config config = new com.aliyuxxx
// 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_xxx
.setAccessKeyId(System.getenv("ALIBABA_CLOUDxxx
// 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_Axxx
.setAccessKeySecret(System.getenv("ALIBABA_Cxxx
// Endpoint 请参考 https://api.alibabacloud.com/product/Ecs
config.endpoint = "ecs-cn-hangzhou.aliyuncs.com";
return new com.aliyun.ecs20140526.Client(config);
}
public static void main(String[] args_) throws Exception {
java.util.List<String> args = java.util.Arrays.asList(args_xxx
com.aliyun.ecs20140526.Client client = Sample.createClientxxx
com.aliyun.ecs20140526.models.RunInstancesRequest runInstaxxx
插入代码片段
该插件目前支持一键插入 Java 和 Java 异步 SDK 示例代码片段,并支持在pom文件自动导入对应的Maven依赖。可通过右键选择Alibaba Cloud Develop Toolkit > Disable/Enable Alibaba Cloud SDK auto-completio或快捷键ctrl+cmd+p打开/关闭此功能。
public class Test1 {
public static void main(String[] args) {
run
在编辑器中输入 run 后,插件自动弹出代码补全列表,展示多个阿里云 API 建议,例如 RunInstances::Ecs::2014-05-26(创建 ECS 实例)、RunCommand::cloudphone::2020-12-30(在云手机中执行命令)等。
在 Alibaba Cloud Developer Toolkit 面板中搜索 ecs,展开弹性计算分类并选择云服务器 ECS,编辑器自动生成以下 SDK 调用代码。右下角弹出提示框询问是否自动导入依赖 ecs20140526,单击Yes确认导入。
public class Test1 {
public static void main(String[] args) {
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config()
// 请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID 和 ALIBABA_CLOUD_ACCESS_KEY_SECRET
.setAccessKeyId(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"))
.setAccessKeySecret(System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"))
// Endpoint 请参考 https://api.alibabacloud.com/product/Ecs
.setEndpoint("ecs.cn-qingdao.aliyuncs.com");
com.aliyun.ecs20140526.Client client = new com.aliyun.ecs20140526.Client(config);
com.aliyun.ecs20140526.models.RunInstancesRequest runInstancesRequest = new com.aliyun.ecs20140526.models.RunInstancesRequest();
com.aliyun.ecs20140526.models.RunInstancesResponse runInstancesResponse = client.runInstances(runInstancesRequest);
}
}