「Mac畅玩鸿蒙与硬件7」鸿蒙开发环境配置篇7 - 使用命令行工具和本地模拟器管理项目

本篇将讲解在 macOS 上配置 HarmonyOS 开发环境的流程,聚焦 hvigorw 命令行工具的使用。我们将以创建 HelloWorld 项目为例,演示使用 hvigorw 进行项目构建、清理操作,并通过 DevEco Studio 的本地模拟器进行预览,帮助提升项目开发与调试效率。

关键词
  • HarmonyOS 命令行工具
  • hvigorw
  • Java 环境配置
  • DevEco Studio 本地模拟器
  • 项目构建与预览

一、配置 Java 环境

hvigorw 依赖 Java 环境(JRE)运行构建任务,因此必须先在 Mac 的终端中安装并配置。

1.1 安装 Java
  1. 下载 JDK:前往 Oracle Java 下载页面 下载适用于 macOS 的 Java Development Kit(JDK)。

在这里插入图片描述

  1. 安装 JDK:下载完成后,双击安装文件,按提示完成安装。
  2. 验证安装:打开终端,运行以下命令确认 Java 是否安装成功:
    java -version
    
1.2 设置 JAVA_HOME 环境变量
  1. 确认 Shell 类型:在终端中运行以下命令,确定使用的 Shell 类型 echo $SHELL
  2. 配置 JAVA_HOME:根据 Shell 类型编辑相应配置文件(zsh 编辑 ~/.zshrcbash 编辑 ~/.bash_profile)。
  • 打开终端并编辑配置文件:
    nano ~/.zshrc
    
  • 在文件末尾添加:
    export JAVA_HOME=<jdk-path>
    export PATH=$JAVA_HOME/bin:$PATH
    
  1. 应用配置:保存并刷新配置:
    source ~/.zshrc   # 对于 zsh
    source ~/.bash_profile   # 对于 bash
    

二、配置 hvigorw 命令行工具

2.1 下载并解压 hvigorw

从 DevEco Studio 下载页面 获取 Command Line Tools 压缩包并解压到 ~/command-line-tools
在这里插入图片描述

2.2 添加 hvigorw 到系统环境变量
  1. 设置路径:在 macOS 终端中编辑配置文件,确保 hvigorw 可全局访问:
 export PATH=~/command-line-tools/bin:$PATH
  1. 验证安装:可以通过以下命令快速确认工具已正确配置,即使未进入项目路径也能执行:
ohpm -v

若显示 ohpm 版本信息,即表示 hvigorw 工具已成功安装配置。


三、创建 HelloWorld 项目并验证 hvigorw

对于项目创建和构建,既可以在 DevEco Studio 中通过内置终端或运行工具执行 hvigorw 命令,也可以在 Mac 的终端中完成。以下是推荐的不同场景下的使用方式:

3.1 在 DevEco Studio 中创建项目
  1. 打开 DevEco Studio,选择 New Project
  2. 在模板选择页面中选择 Empty Ability,填写基本信息后点击 Finish 创建项目。
3.2 使用 hvigorw 构建项目
  • 推荐场景:刚创建项目或正在 DevEco Studio 中进行开发时,在 DevEco Studio 的内置终端执行以下命令,可避免频繁切换工具。
  • 其他场景:若无需启动 DevEco Studio 或需在脚本/自动化流程中执行命令,可直接在 macOS 终端中操作。
  1. 进入项目目录(如 HelloWorld 项目)并验证 hvigorw 配置是否成功:
cd /path/to/HelloWorld
hvigorw -v
  1. 清理并构建项目
hvigorw clean
hvigorw assembleHap -p buildMode=debug

buildMode=debug 为调试模式,发布可使用 buildMode=release


四、在 DevEco Studio 模拟器中预览应用

  1. 启动本地模拟器:在 Tools > Device Manager 中选择 本地模拟器并启动。
  2. 运行项目:在 DevEco Studio 中点击 Run,应用将自动安装到模拟器中并启动。

五、hvigorw 工具的实用场景

  • 自动化构建:适用于 CI/CD 环境的自动化流水线。
  • 增量编译与并行构建:减少编译时间,加速开发流程。
  • 构建日志分析:提供构建流程详细日志,帮助解决性能瓶颈。
  • 测试与覆盖率:支持集成测试并生成代码覆盖率报告,持续跟踪项目质量。

小结

本篇介绍了在 macOS 上配置 HarmonyOS 开发环境及 hvigorw 工具的使用,演示了项目创建、构建、模拟器预览。hvigorw 工具适用于自动化构建和持续集成场景,而 DevEco Studio 的模拟器便于调试和预览应用。


下一篇预告

下一篇将介绍如何在鸿蒙项目中管理应用的依赖和资源文件,帮助开发者优化项目资源结构,提升项目的运行效率。


上一篇「Mac畅玩鸿蒙与硬件6」鸿蒙开发环境配置篇6 - 理解鸿蒙项目结构
下一篇「Mac畅玩鸿蒙与硬件8」鸿蒙开发环境配置篇8 - 应用依赖与资源管理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/460135.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ECharts饼图,配置标注示例

const color ["#00FFB4", "#5498FD", "#6F54FD", "#FD5454", "#FDA354",]const datas [{ value: 100, name: "一年级" },{ value: 70, name: "二年级" },{ value: 184, name: "三年级" },{…

基于卷积神经网络的苹果病害识别与防治系统,resnet50,mobilenet模型【pytorch框架+python源码】

更多目标检测和图像分类识别项目可看我主页其他文章 功能演示&#xff1a; 苹果病害识别与防治系统&#xff0c;卷积神经网络&#xff0c;resnet50&#xff0c;mobilenet【pytorch框架&#xff0c;python源码】_哔哩哔哩_bilibili &#xff08;一&#xff09;简介 基于卷积…

YOLO即插即用模块---CAA

oly Kernel Inception Network for Remote Sensing Detection 论文地址&#xff1a;2403.06258https://arxiv.org/pdf/2403.06258 主要问题&#xff1a; 目标尺度变化大&#xff1a; 遥感图像中目标尺度范围广泛&#xff0c;从大型物体&#xff08;如足球场&#xff09;到小型…

【网络面试篇】TCP与UDP类

目录 一、综述 1. TCP与UDP的概念 2. 特点 3. 区别 4. 对应的使用场景 二、补充 1. 基础概念 &#xff08;1&#xff09;面向连接 &#xff08;2&#xff09;可靠的 &#xff08;3&#xff09;字节流 2. 相关问题 &#xff08;1&#xff09;TCP 和 UDP 可以同时绑定…

【C++】类和对象(六):运算符重载1

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家了解C的运算符重载&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 目录 (A) 引入(B) 运算符重载 (A) 引入 写一个Date日期类&#xff0c;问&#xff1a;如果我…

C语言(一维数组)

如果对你有帮助&#xff0c;请点个免费的赞吧&#xff0c;谢谢汪。&#xff08;点个关注也可以&#xff01;&#xff09;\n\n如果以下内容需要补充和修改&#xff0c;请大家在评论区交流~ 思维导图 1.数组 由一个或多个相同的数据类型组成的集合 特点&#xff1a; 数据类型相…

Mount Image Pro,在取证安全的环境中挂载和访问镜像文件内容

天津鸿萌科贸发展有限公司从事数据安全服务二十余年&#xff0c;致力于为各领域客户提供专业的数据恢复、数据备份解决方案与服务&#xff0c;并针对企业面临的数据安全风险&#xff0c;提供专业的相关数据安全培训。 天津鸿萌科贸发展有限公司是 GetData 公司数据恢复与取证工…

上市公司企业数字金融认知数据集(2001-2023年)

一、测算方式&#xff1a;参考C刊《经济学家》王诗卉&#xff08;2021&#xff09;老师的做法&#xff0c;数字金融认知使用每万字年报描述中包含的对数字金融相关关键词的提及次数&#xff0c;关键词为&#xff1a;互联网、数字化、智能、大数据、电子银行、金融科技、科技金融…

【Mybatis】动态SQL+配置文件+数据库连接池+企业规范(10)

本系列共涉及4个框架&#xff1a;Sping,SpringBoot,Spring MVC,Mybatis。 博客涉及框架的重要知识点&#xff0c;根据序号学习即可。 目录 本系列共涉及4个框架&#xff1a;Sping,SpringBoot,Spring MVC,Mybatis。 博客涉及框架的重要知识点&#xff0c;根据序号学习即可。 …

Web3的去中心化社交网络:区块链技术如何改变互动方式

随着互联网技术的不断进步&#xff0c;社交网络正在经历一场深刻的变革。Web3&#xff0c;作为新一代互联网技术的代表&#xff0c;正通过区块链和去中心化理念改变着我们与他人互动的方式。传统的社交网络通常由大型公司控制&#xff0c;用户数据的集中化管理和隐私问题备受关…

大数据-191 Elasticsearch - ES 集群模式 配置启动 规划调优

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…

短信登录的实现-redis和session的比较

目录 短信登录功能的实现一&#xff1a;基于session进行短信登录1&#xff1a;发送验证码2&#xff1a;登录3&#xff1a;登录验证拦截器4&#xff1a;隐藏用户敏感信息二&#xff1a;session的集群共享问题三&#xff1a;基于redis实现短信登录登录的刷新问题 短信登录功能的实…

中欧科学家论坛暨第六届人工智能与先进制造国际会议(AIAM 2024)在德国法兰克福成功举办,两百余名中外科学家共襄盛举

2024年10月20至21日&#xff0c;首届中欧科学家论坛在德国法兰克福的SAALBAU Titus Forum国际会议中心成功举行。中国驻法兰克福总领事馆伍鹏飞副总领事、德国兰斯巴赫-鲍姆巴赫市市长Michael Merz亲自出席并致辞。2004年诺贝尔化学奖得主Aaron Ciechanover教授和法国国家科学院…

直接删除Github上的文件

直接删除Github上的文件 说明&#xff1a;此操作只删除Github上的文件&#xff0c;本地仓库文件不受影响 1.确定要删除哪个分支文件,以删除main为例&#xff0c; 1.找到本地仓库位置以StudyNote为例&#xff0c;右键 bash here 2.打开命令窗口&#xff0c;将Github的StudyN…

SpringBoot篇(运维实用篇 - 日志)

目录 一、简介 二、代码中使用日志工具记录日志 1. 操作步骤 步骤1&#xff1a;添加日志记录操作 步骤2&#xff1a;设置日志输出级别 步骤3&#xff1a;设置日志组 2. 知识小结 三、优化日志对象创建代码 1. 实例 2. 总结 四、日志输出格式控制 1. 实例 2. 总结 …

Java多线程编程基础

目录 编写第一个多线程程序 1. 方式一 : 继承Thread类, 重写run方法 2. 方式二: 实现Runnable接口, 重写run方法 3. 方式三: 使用Lambda表达式 [匿名内部类] [Lambda表达式] 在上个文章中, 我们了解了进程和线程的相关概念. 那么, 在Java中, 我们如何进行多线程编程呢? …

postman的脚本设置接口关联

pm常用的对象 变量基础知识 postman获取响应结果的脚本的编写 下面是购物场景存在接口信息的关联 登录进入---搜索商品---进入商品详情---加入购物车 资源在附件中&#xff0c;可以私聊单独发送 postman的SHA256加密 var CryptoJS require(crypto-js);// 需要加密的字符串 …

ip地址分为几大类-IP和子网掩码对照表

一、IP地址的基本概念与分类 IP地址是用于在网络中标识每个设备的逻辑地址。互联网协议将IP地址分为A、B、C、D和E五类&#xff0c;其中A、B、C三类最常用&#xff0c;它们主要根据地址的首位位数以及用途进行划分。 A类地址&#xff1a; 范围&#xff1a;0.0.0.0 - 127.255.2…

docker占用磁盘过多问题

我在windows系统上用docker&#xff0c;安装在C盘环境下&#xff0c;我发现C盘占用了大量的空间&#xff0c;查找后发现是docker的映像文件占用的&#xff0c;于是开始清理&#xff0c;中间还踩个坑&#xff0c;记录一下&#xff0c;下次需要的时候方便找。 踩坑 我本想移动映…

Xss_less靶场攻略(1-18)

xss-lab-less1 ur特殊字符转义 存在url中 转义符为 %2B& 转义符为 %26空格 转义符为 或 %20/ 转义符为 %2F? 转义符为 %3F% 转义符为 %25#转义符为 %23 转义符为 %3Dimg 标签懒加载 在XSS攻击中&#xff0c;img标签的src属性是一个常见的攻击向量&#xff0c;因为它可以…