cordova项目环境搭建 hello

环境准备:

1.下载nodejs并安装配置。

直接官网下载最新版本。此次我是下载的 Node.js v22.12.0。

1.1安装好后配置镜像。

 输入:node -v     // 显示node.js版本

            npm -v      // 显示npm版本

 1.2环境配置

(1)找到安装的目录,在安装目录下新建两个文件夹【node_global】和【node_cache】

(2)创建完毕后,使用管理员身份打开cmd命令窗口(打开方法见下方Tips),输入

①npm config set prefix “你的路径\node_global” (复制你刚刚创建的“node_global”文件夹路径)

②npm config set cache “你的路径\node_cache” (复制你刚刚创建的“node_cache”文件夹路径)

(3)配置环境变量 

然后你就会发现【node_global】里多出了一个【node_modules】文件夹 。

Tips: 如果输入变量值之后没有自动创建【node_modules】文件夹,就在【node_global】下手动创建一个【node_modules】文件夹,再复制你创建的【node_modules】文件夹的路径地址到变量值

③编辑【用户变量】中的【Path】。将默认的 C 盘下【 AppData\Roaming\npm 】修改成 【node_global】的路径,点击确定。即把第二行替换为第三行路径。

⑤在【系统变量】中选择【Path】点击【编辑】添加【NODE_PATH】,随后一直点击【确定】

1.3安装淘宝镜像

  通过命令“npm config set registry http://registry.npmmirror.com“设置淘宝镜像源

 运行“npm config get registry“查看当前配置的镜像地址

至此,nodejs安装配置完成。

2.接下来全局安装Cordova工具

在命令行输入npm install -g cordova全局安装Cordova工具

安装完成后:

3.使用cordova创建项目 

运行 cordova create <目录> <包名> <应用名>  创建一个项目。

如 cordova create hello xpl.android.hello hello

需要关闭cmd窗口重新打开,之前配置的环境变量才会生效。创建成功后,项目目录如下:

进入项目目录:使用 cd <目录> 命令。

添加平台(例如OS或Android或浏览器或):运行

 cordova platform add ios 

或 cordova platform add android

或 cordova platform add browser 

浏览器运行cordova run 


按ctrl+C 退出运行
cordova platform add android 

默认添加的Android最低版本是sdk34


cordova build android

没有配置Android的sdk。以前有安装过,直接解压压缩包到指定目录进行配置。

 

配置好后关闭cmd窗口,重新打开,运行cordova build android

 本地其实已经安装过gradle了,版本是gradle-8.10.2。并且配置了如下环境变量,还是报上错误:

根据百度查到说是配置CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL环境变量。gradle-8.10.2-bin.zip以前已经下载好了,放到对于路径下去。

重启cmd窗口,执行编译命令,报如下错误:还是会自动下载gradle

提示url不正确,百度查了下,是斜杠问题,window系统正确的路径应该是:

file:///D:/xpl_soft/gradle-8.10.2/gradle-8.10.2-bin.zip

重启cmd窗口,执行编译命令cordova build android,报如下错误:

提示Android build tools version 34.0.0,说明Android sdk 34 版本不存在。

前面使用cordova platform add android命令添加组件,cordova-Android版本是13.0.0。可能版本太高了,导致后面报错。准备移除该组件,重新添加12.0.0版本的试一下。

 

再次编译运行:

通过Android studio安装Android sdk build-tools 33.0.2版本。

再次编译运行:

运行了近11分钟,还是报错了。

把hello项目删除,重新创建了。报下面错误:准备升级gradle看看。

替换环境:

1.jdk:jdk1.8.0_301_x64

2.nodejs:

3.cordova:11.0.0

4.cordova-Android:11.0.0

5.gradle:gradle-8.10.2-bin

再次编译运行报如下错误(下载了很久,大概20多分钟。如果配置build.gradle设置国内镜像源应该可以快很多):

Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8

 结果不断组合测试,以下配置终于编译成功了:

虽然报错了,但是后面提示build 成功 了。后面再编译了一次,没有报错,提示成功:

终于成功了。记录下此时环境配置:

1.jdk:jdk-11.0.19

2.nodejs:

3.cordova:11.0.0

4.cordova-Android:11.0.0

5.gradle:7.4.2

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

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

相关文章

LE Audio 初探

LE Audio 架构 一.LE Audio profile框架 profile初识&#xff1a; BAP&#xff1a; BAP通常在手机端实现&#xff0c;它允许配置编解码器&#xff0c;配置QoS(质量服务)&#xff0c;控制流媒体&#xff0c; PACS&#xff1a; Published Audio Capabilities Service&#xff0c;…

Ⅱ.INTRODUCTION TO CUDA C

前言 上一节环境配置好了&#xff0c;我们开始吧&#xff01; 一、A First Program 1. Hello, World! 我们先写一个C语言的 Hello, World! 作为对比 int main(void){printf("Hello, World!\n");return 0; }大家应该知道这个代码运行在CPU上吧&#xff0c;我们CP…

CSP初赛知识学习计划(第一天)

计算机知识全解析 一、计算机的发展历程 计算机的发展堪称一部波澜壮阔的科技史诗&#xff0c;其源头可追溯至古老的计算工具。早期&#xff0c;为了满足人类在天文、历法计算以及商业贸易中对数据处理的需求&#xff0c;算盘、算筹等手动计算器械应运而生&#xff0c;它们依…

科大讯飞android面试题及参考答案

如何理解面向对象编程? 面向对象编程(Object - Oriented Programming,简称 OOP)是一种编程范式,它以对象为核心来组织程序结构。 在面向对象编程中,对象是数据和操作这些数据的方法的集合。例如,我们可以把汽车看作一个对象。汽车有自己的属性,像颜色、品牌、速度等,这…

【数据仓库】hadoop web UI 增加账号密码认证

​ 升级了hadoop版本到3.3.6,未配置任何鉴权,默认端口9870 8088开放到了公网,结果没几天就被挖矿攻击了。通过开放的端口提交了很多非法任务到yarn上,并成功在服务器执行了恶意脚本。这次是真实真切的感受了,网络环境的险恶,以前仅仅是别人的案例来提高自己的安全意识,这…

域上的多项式环,整除,相通,互质

例1.已知 (R,,x)为域&#xff0c;请选出正确的说法:(A)(R,,x)也是整区; ABCD (B)R中无零因子; C)R在x运算上满足第一、二、三指数律; (D)R只有平凡理想; (E)R只有平凡子环。 域的特征&#xff1a; 域中&#xff0c;非0元素的加法周期 思考、在模7整数环R,中&#xff0c;…

【0x0014】HCI_Read_Local_Name命令详解

目录 一、命令概述 二、命令格式 三、返回事件及参数说明 3.1. HCI_Command_Complete 事件 3.2. Status 3.3. Local_Name 四、命令执行流程 4.1. 命令发送 4.2. 控制器接收并处理命令 4.3. 控制器返回结果 4.4. 主机接收并解析事件包 4.5. 示例代码 五、应用场景 …

【AI日记】25.01.04 kaggle 比赛 3-3 | 王慧玲与基层女性

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】 工作 参加&#xff1a;kaggle 比赛 Forecasting Sticker Sales时间&#xff1a;6 小时 读书 书名&#xff1a;基层女性时间&#xff1a;3 小时原因&#xff1a;虽然我之前就知道这个作者&#xff0c;因为我…

【从零开始入门unity游戏开发之——C#篇40】C#特性(Attributes)和自定义特性

文章目录 前言一、特性&#xff08;Attributes&#xff09;基本概念二、自定义特性1、自定义特性代码示例&#xff1a;2、应用自定义特性&#xff1a;3、解释3.1 **AttributeUsage 特性**3.2 特性的命名3.3 **构造函数**&#xff1a;3.4 **属性**&#xff1a; 4、使用反射获取特…

PG起库逻辑和spill导致起库慢问题分析

问题现象-起库缓慢 版本pg13.2 数据库启动缓慢&#xff0c;startup进程在读取spill文件&#xff0c;文件名在变化。查看spill文件也很慢&#xff0c;ls -l最后跑出来有800w个文件spill文件。 为什么有上千万个spill文件 wal段和LSN的含义 LSN LSN总体是一个64位的bigint&…

【Python学习(六)——While、for、循环控制、指数爆炸】

Python学习&#xff08;六&#xff09;——While、for、循环控制、指数爆炸 本文介绍了While、for、循环控制、指数爆炸&#xff0c;仅作为本人学习时记录&#xff0c;感兴趣的初学者可以一起看看&#xff0c;欢迎评论区讨论&#xff0c;一起加油鸭~~~ 心中默念&#xff1a;Py…

【JS】期约的Promise.all()和 Promise.race()区别

概述 Promise.all() 和 Promise.race() 都是 JavaScript 中处理多个异步操作的 Promise 方法&#xff0c;但它们的行为和返回结果有所不同。 Promise.all()和Promise.race() 1. Promise.all() Promise.all() 接受一个由多个 Promise 实例组成的可迭代对象&#xff08;例如数…

5 Linux 网络编程基础 API

5 Linux 网络编程基础 API 主机字节序和网络字节序 主机&#xff08;小端&#xff09;字节序&#xff1a;0x0201网络&#xff08;大端&#xff09;字节序&#xff1a;0x0102&#xff0c;利于人看 #include <netinet/in.h> unsigned long int htonl(unsigned long int …

基于PyQt5的UI界面开发——图像与视频的加载与显示

介绍 这里我们的主要目标是实现一个基于PyQt5和OpenCV的图像浏览和视频播放应用。用户可以选择本地的图像或视频文件夹&#xff0c;进行图像自动播放和图像切换以及视频播放和调用摄像头等操作&#xff0c;并且支持图像保存功能。项目的核心设计包括文件路径选择、图像或视频的…

JAVA类和对象练习

设计一个矩形类Rectangle&#xff0c;包含私有的数据成员宽度(Width)和高度(Height)&#xff1b;公有的方法double getArea()返回矩形的面积&#xff0c;公有的方法double getPerimeter()返回矩形的周长。 例如: 测试Result Rectangle rectnew Rectangle(8,5); System.out.pr…

云手机+Facebook:让科技与娱乐完美结合

移动互联网时代&#xff0c;Facebook作为全球最大的社交媒体平台之一&#xff0c;早已成为企业、品牌和组织竞相角逐的营销阵地。而云手机的出现&#xff0c;则为Facebook营销注入了新的活力&#xff0c;其独特的优势让营销活动更加高效、精准且灵活。本文将深入探讨云手机在Fa…

全新免押租赁系统打造便捷安全的租赁体验

内容概要 全新免押租赁系统的推出&#xff0c;标志着租赁行业的一次重大变革。这个系统的最大特点就是“免押金”&#xff0c;大大减轻了用户在租赁过程中的经济负担。从此&#xff0c;不再需要为一部手机或其他商品支付高昂的押金&#xff0c;用户只需通过简单的信用评估&…

postman在软件测试中的应用

postman工具概述 Postman 是一款功能强大的 API 开发和测试工具&#xff0c;在软件开发和测试领域应用广泛。开发阶段&#xff0c;可以通过工具进行mock数据测试&#xff0c;方便开发&#xff0c;联调&#xff1b;测试阶段&#xff0c;可以通过不同环境&#xff0c;不同数据进…

电子电气架构 --- 安全相关内容汇总

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源,以现象替代逻辑,以情绪代替思考,把消极接受现实的懦弱,伪装成乐观面对不幸的…

探索Wiki:开源知识管理平台及其私有化部署

在如今的信息时代&#xff0c;企业和团队的知识管理变得愈发重要。如何有效地存储、整理、共享和协作&#xff0c;是提高团队效率和创新能力的关键因素之一。今天&#xff0c;我要为大家介绍一款非常有用的github上开源知识管理工具——Wiki&#xff0c;并分享它的私有化部署方…