一、概述
1. 案例介绍
本案例选择IntelliJ IDEA作为开发工具,通过创建开发者空间云开发环境,并使用IntelliJ IDEA在本地进行代码编写调试,一键部署到云开发环境,让开发者以更符合自身开发习惯的作业模式体验华为开发者空间云开发环境。
2. 适用对象
- 企业
- 个人开发者
- 高校学生
3. 案例时间
本案例总时长预计60分钟。
4. 案例流程
说明:
- 登陆开发者空间云开发环境;
- 本地下载cli文件;
- 建立隧道连接云开发环境;
- 通过IntelliJ IDEA完成代码编写、编译、运行。
5. 资源总览
本案例预计花费0元。
资源名称 | 规格 | 单价(元) | 时长(分钟) |
华为开发者空间 - 云开发环境 | 鲲鹏通用计算增强型 kc1 | 2vCPUs | 4G | HCE | 免费 | 60 |
最新案例动态,请查阅 《基于开发者空间编写ODBC应用程序操作OpenGauss数据库》。小伙伴快来领取华为开发者空间,进入云开发环境服务器版实操吧!
二、环境配置
1. 开发者空间配置
面向广大开发者群体,华为开发者空间提供一个随时访问的“开发平台”、丰富的“预配置工具集合”和灵活使用的“场景化资源池”,开发者开箱即用,快速体验华为根技术和资源。
开发者可以登录华为云账号后可以直接进入华为开发者空间开发平台界面,点击云开发环境即可进入云开发环境页面。
**注:**初次进入云开发环境需签署协议,勾选协议后,点击【进入】。
云开发环境如下图所示:
2. PC端通过cli工具连接云开发环境
本案例中,使用华为云《开发者空间云开发环境使用指导》的“三. PC端环境配置”、“四. 本地PC端操作云开发环境中的1.开机、2.建立隧道连接”章节完成cli工具安装、环境配置、创建云开发环境、开机、建立隧道连接的功能。
三、本地IDE直连云开发环境完成上传下载
1. 下载IntelliJ IDEA并连接远程开发环境
IntelliJ IDEA的下载: https://www.jetbrains.com.cn/idea/download/other.html
IntelliJ IDEA安装与配置,请开发者自行完成。
打开开发工具,点击Remote Development-> SSH:
点击New Project,输入Username、Host、Port,再点击Check Connection and Continue:
注意: 用户名:默认为developer,若是用户自定义了用户名,此处应改为自定义的用户名。 主机地址:127.0.0.1。 端口号:步骤二环境配置中,连接云开发环境时,建立隧道所设置的本地监听端口号。
点击OK:
输入密码,点击Authenticate:
注意:密码为步骤二环境配置中,创建远程开发环境时,设置的密码。
弹出警告框,请忽略,点击Continue Anyway:
连接成功后,选择IDE version:IntelliJ IDEA 2024.3.6,选择项目存放目录:home/developer,点击OK:
点击Download IDE and Connect:
输入密码,点击Authenticate:
注意:密码为步骤二环境配置中,创建远程开发环境时,设置的密码。
若弹出警告框,继续点击Continue Anyway:
Downloading JetBrainsClient:
远程主机上下载IDE:
同步远程项目:
远程项目同步完成:
2. 文件上传下载
我们把本地的一个测试文件拖拽到远程开发环境developer目录下:
编辑远程开发环境中的文件:
把远程开发环境中的文件下载到本地,步骤如下:
四、使用云开发环境完成代码开发
1. 新建远程项目
点击左上角图标,新建项目,输入项目名称,选择项目存放目录:/home/developer,构建方式选择Maven,选择JDK,点击Create:
等待项目同步完成:
项目同步完成:
2. 代码开发及编译运行
将小游戏代码拷贝至Main.java文件中:
package org.example;import java.util.Random;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);Random random = new Random();String[] choices = {"石头", "剪刀", "布"};int playerScore = 0;int computerScore = 0;System.out.println("===== 石头剪刀布游戏 =====");System.out.println("游戏规则:");System.out.println("1. 石头 打败 剪刀");System.out.println("2. 剪刀 打败 布");System.out.println("3. 布 打败 石头");System.out.println("4. 输入 0 退出游戏");while (true) {System.out.println("\n------------------------");System.out.print("请出拳 (1=石头, 2=剪刀, 3=布): ");int playerChoice = scanner.nextInt();// 退出游戏if (playerChoice == 0) {System.out.println("\n游戏结束!最终比分:");System.out.println("玩家: " + playerScore + " 电脑: " + computerScore);break;}// 验证输入if (playerChoice < 1 || playerChoice > 3) {System.out.println("无效输入!请输入1-3的数字");continue;}int computerChoice = random.nextInt(3) + 1;System.out.println("你出了: " + choices[playerChoice - 1]);System.out.println("电脑出了: " + choices[computerChoice - 1]);// 判断胜负if (playerChoice == computerChoice) {System.out.println("平局!");} else if ((playerChoice == 1 && computerChoice == 2) ||(playerChoice == 2 && computerChoice == 3) ||(playerChoice == 3 && computerChoice == 1)) {System.out.println("你赢了!");playerScore++;} else {System.out.println("电脑赢了!");computerScore++;}System.out.println("当前比分: 玩家 " + playerScore + " - " + computerScore + " 电脑");}scanner.close();}
}
代码展示如下:
点击右上角运行按钮,编译运行代码:
石头剪刀布游戏,代码运行结果截图:
运行结果文本显示:
===== 石头剪刀布游戏 =====
游戏规则:
1. 石头 打败 剪刀
2. 剪刀 打败 布
3. 布 打败 石头
4. 输入 0 退出游戏------------------------
请出拳 (1=石头, 2=剪刀, 3=布): 2
你出了: 剪刀
电脑出了: 布
你赢了!
当前比分: 玩家 1 - 0 电脑------------------------
请出拳 (1=石头, 2=剪刀, 3=布): 3
你出了: 布
电脑出了: 布
平局!
当前比分: 玩家 1 - 0 电脑------------------------
请出拳 (1=石头, 2=剪刀, 3=布): 1
你出了: 石头
电脑出了: 剪刀
你赢了!
当前比分: 玩家 2 - 0 电脑------------------------
请出拳 (1=石头, 2=剪刀, 3=布): 0游戏结束!最终比分:
玩家: 2 电脑: 0Process finished with exit code 0
3. 关闭cli连接
本案例中,使用华为云《开发者空间云开发环境使用指导》的“四. 本地PC端操作云开发环境中的4.关机、5.删除”章节完成云开发环境的关闭和删除的功能。