android studio官方网站关于android SDK环境变量的设置说明晦涩难懂

这是它中文版原文:
您可以通过设置环境变量来配置 Android Studio 和命令行工具的行为。其中一个最有用的环境变量之一是 ANDROID_HOME,很多工具都会读取该变量来确定 Android SDK 安装目录。如需通过命令行运行工具,而不包含可执行文件的完整路径,请将命令搜索路径环境变量设置为包含 ANDROID_HOME/tools、ANDROID_HOME/tools/bin 和 ANDROID_HOME/platform-tools。

先说简单结论,后面的长篇大论,愿意深入了解的朋友再看。
“命令搜索路径环境变量”这句话是相当绕口,其实就是环境变量当中那个名为path的变量。
虽然安卓studio官网有很多内容写得晦涩难懂,但是很多内容其实都有点进去进一步说明的选项,虽然这也可能反倒让人更迷糊(因为里面可能让人看不懂的地方更多了),但多一些参考资料,总比啥都没有说明来得强。

回到正文,我最开始是看不懂它那个基础说明的,也是问了AI才搞明白的(主要是令自己回忆起了久远的知识,结合起来就弄懂了)。

我先说说我的理解,对于大部分的程序员来讲,其实都知道怎么设置环境变量,如果需要系统级别的,就在系统那个环境变量上改,如果需要用户级别的,就在用户级别的环境变量上改。
通常系统级别的环境变量需要重启电脑。而用户级别似乎不用重启(我很少改用户级别的环境变量,不太确定这一点)。主要是考虑到系统级别环境变量可以对任意用户都起作用,所以我本人习惯性改系统级别的环境变量
然后通常改法,一般要么就是找path,然后在里面添加对应的需要访问到的文件或可执行程序的路径。
要么就是完全新建一个环境变量,变量的名字和值(键值,是这么理解的吧?我也不太确定哈)都由自己来填。当然,因为特定程序的要求,通常名字也是它们指定了的。比如安卓这个,它要求你新建的环境变量的名字是ANDORID_HOME,你就得照着它这个来,不然人家程序不认识,这个值是对应的Android SDK的路径。
这个,我刚看它们安卓studio官网的说明倒是一下就知道。只是后面几个就有点困惑了,尤其是它这句话,我看完愣是没看明白:请将命令搜索路径环境变量设置为包含 ANDROID_HOME/tools、ANDROID_HOME/tools/bin 和 ANDROID_HOME/platform-tools。
也是让AI给我汉语转汉语地翻译了一波才搞懂,简直了。
说白了,就是要把这后面几个路径添加到path当中。可像“ANDROID_HOME/tools”这样的根本不是路径,那玩儿个蛋啊。然后我就问AI了,其实AI给的答案也有一点点误导性,后面我会贴出来AI的回答。
要不是起以前见过类似的东西,我都忘了这茬了。这茬是哪茬?就是环境变量的引用问题。
环境变量当中,存在着一个环节变量引用另一个环境变量的情况,最早我是在安装JDK的时候碰到的。很久以前的事情了。这里不扯远了,我们就谈安卓这个SDK,它官方既然举例,那就不会无缘无故放个ANDROID_HOME在这里吧?而且它前面既然命名了名为ANDROID_HOME的环境变量,后面这几个内部的文件夹,其实应该是鼓励用户通过引用来填写的。
在windows当中,可以通过在path的值当中用两个%把一个环境变量包裹起来,从而引用它的值。
比如%ANDROID_HOME%\tools这其实就是引用了ANDROID_HOME的值(在这里我们知道是AndroidSDK所在的路径)后面加个\tools,连起来就是安卓SDK(我这里打中文了,老打那个Android真的折磨人)目录下的tools目录这个路径。
剩下两个也是同样理解,只要使用了%ANDROID_HOME%,就等于用了安卓SDK的路径,只不过后面跟的目录不同,就对应到不同的路径了。

这样做的好处是,只需要修改一个ANDROID_HOME的路径,剩下的也跟着变过来了。AI的答案虽然也没毛病,但是它实际上没有考虑到环境变量的相互引用这一层。
说白了还是要见的错误情况够多,才能熟能生巧一下子反应过来。

linux上的环境变量我不太熟悉,这里就不班门弄斧了,只提供下AI的答案:
Windows
右键点击“我的电脑”或“此电脑”,选择“属性”。
点击“高级系统设置”。
在系统属性窗口中,点击“环境变量”。
在“系统变量”区域,找到并选择“Path”变量,然后点击“编辑”。
在编辑界面,点击“新建”,添加以下三个路径(确保把[你的Android SDK路径]替换成你的实际路径):
[你的Android SDK路径]\tools
[你的Android SDK路径]\tools\bin
[你的Android SDK路径]\platform-tools
点击“确定”保存更改。
macOS/Linux
打开终端。
你需要编辑 .bash_profile, .bashrc 或 .zshrc 文件,这取决于你使用的是哪种shell。可以使用文本编辑器,例如使用命令 nano ~/.bash_profile。
在文件的末尾,添加以下行(确保把[你的Android SDK路径]替换成你的实际路径):
bash
Copy code
export PATH= P A T H : [ 你的 A n d r o i d S D K 路径 ] / t o o l s e x p o r t P A T H = PATH:[你的Android SDK路径]/tools export PATH= PATH:[你的AndroidSDK路径]/toolsexportPATH=PATH:[你的Android SDK路径]/tools/bin
export PATH=$PATH:[你的Android SDK路径]/platform-tools
保存文件并关闭编辑器。
在终端中,运行 source ~/.bash_profile(或相应的文件名),以使更改生效。


http://www.niftyadmin.cn/n/5301286.html

相关文章

技术扫盲:如何优雅的使用 java -jar

java -jar xxx.jar java -jar 是一个用于在命令行界面中执行 Java 可执行 JAR 文件的命令。它的语法如下&#xff1a; java -jar <JAR 文件路径> [参数]其中&#xff1a; java 是 Java 运行时环境的可执行文件。-jar 是一个选项&#xff0c;表示要执行的文件是一个 JA…

网页爬虫对于网络安全有哪些影响?

在当今信息爆炸的时代&#xff0c;网络已经成为人们获取信息、交流思想和开展业务的重要平台。然而&#xff0c;随着网络的普及和技术的不断发展&#xff0c;网络安全问题也日益凸显&#xff0c;其中网页爬虫对网络安全的影响不容忽视。本文将就网页爬虫对网络安全的影响进行深…

23年全年游戏获版号破千,对游戏行业传达积极信号

12月25日&#xff0c;国家新闻出版署公布了新一批国产网络游戏版号&#xff0c;本次发布的过审版号中进口版号共有40款游戏过审&#xff0c;国产版号共有105款游戏过审&#xff01;单次审批数量首次突破百款&#xff0c;其中8款为移动客户端&#xff0c;3款为客户端&#xff0c…

HAproxy群集

HAproxy群集 常见的集群调度器HAproxy 、nginx、LVS区别HAproxynginxlvs HAproxy介绍HAproxy特点HAproxy常见的负载均衡策略HAproxy会话保持HAproxy配置实例 常见的集群调度器 常见的web集群调度器分为软件和硬件 软件&#xff1a;LVS Haproxy nginx 硬件&#xff1a; F5 Ar…

无辅源电压继电器 RWY-D2/3 180-440VAC 导轨安装 josef约瑟

RWY-D1型电压继电器&#xff1b; RWY-D2型电压继电器&#xff1b; 一、 概述 RWY-D系列电压继电器&#xff08;以下简称本继电器&#xff09;用于发电机、变压器和输电线的电器保护装置中&#xff0c;作为过电压保护或低电压闭锁的启动原件。本继电器为集成电路静态型继电器…

Android App从备案到上架全过程

不知道大家注意没有,最近几年来,新的移动App想要上架是会非常困难的,并且对于个人开发者和小企业几乎是难如登天,各种备案和审核。但是到底有多难,或许只有上架过的才会有所体会。 首先是目前各大应用市场陆续推出新的声明,各种备案截止日期到12月就要到最后期限责令整改…

31、杭州电子科技大、深圳大数据研究院、港中文第二附属医院提出:SCUNet++,堪称完美的缝合设计[太美丽家人们!]

本文由1杭州电子科技大学&#xff0c;2深圳大数据研究院&#xff0c;3香港中文大学第二附属医院于2023年12月22日发表于arXiv<Electrical Engineering and Systems Science >。 论文&#xff1a; 《SCUNet: Assessment of Pulmonary Embolism CT Image Segmentation Le…

【网安Part01】网络安全技术第一章:网络安全概述

学习背景&#xff1a; 为什么我要开始学习网络安全&#xff1a;【记录&#xff1a;开始学习网络安全】 资料地址&#xff1a;【GitHub仓库:network-security-mind-map】 目录 网络安全基础知识网络安全的重要性网路安全的主要威胁因素网络攻击过程网络安全策略及制定原则网络…