react native在windows环境搭建并使用脚手架新建工程

news/2025/1/30 19:48:13/

截止到2024-1-11,使用的主要软件的版本如下:

软件实体版本
react-native0.77.0
react18.3.1
react-native-community/cli15.0.1
Android Studio2022.3.1 Patch3
Android SDKAndroid SDK Platform 34 35
Android SDKAndroid SDK Tools 34 35
Android SDKIntel x86 Atom_64 System Image
Android SDKGoogle APIs Intel x86 Atom System Image
node18.18.2
yarn1.22.22
npm9.8.1
jdk17.0.8

windows10">1. 搭建流程(基于windows10)

最新版本请参考官网

Node.js环境安装

安装node稳定版,访问如下网址
Node.js官网

yarn的安装

使用管理员打开cmd,并使用如下命令安装yarn

npm install -g yarn
react-native脚手架安装
npm install -g react-native-cli
安装JDK

安装jdk,本次使用的版本为17.0.8

添加系统和用户环境变量JAVA_HOME,其值为

D:\Develop\jdk-17

%JAVA_HOME%\bin添加到系统环境变量path

使用java -version验证是否成功

安装Android Studio

Android Studio官网下载地址 安装包也可以通过360软件管家下载
安装Android Studio,其步骤没有特殊的,不需要设置代理,按照提示一直走完安装流程。

选择安装的组件

选择安装位置

打开Android Studio

如果本地有设置文件,选择Config or installation folder

如果本地没有设置文件,选择Do not import settings

点击OK,跳转到Data Sharing界面,根据自己用途选择,我这里选择Don’t send,如图:

点击Don’t send,弹出找不到SDK的界面,如图:

点击cancel--然后点击next

注意选中custom

选择主题

点击Next,跳转的安装SDK界面,默认选择,选择安装的路径,如图:

点击Next,跳转内存分配界面,默认就好,内存主要看你自己电脑内存,每个人的电脑内存是不一样的,如图:

点击Next,确认安装配置界面,如图:

接受协议然后点击finish

打开时下载组件,这个过程会很漫长 耐心等待

点击finish

创建一个新项目

安装成功

配置SDK

按照下图,安装

Android SDK Platform 33 34

Android SDK Tools 33 34

Intel x86 Atom_64 System Image

Google APIs Intel x86 Atom System Image

配置Android Studio环境变量

按照如下图的操作,将Android SDK Location的值作为系统环境变量ANDROID_HOME的值

除此以外,将如下的值作为path的环境变量追加值

%ANDROID_HOME%\platform-tools
%ANDROID_HOME%\emulator
%ANDROID_HOME%\tools
%ANDROID_HOME%\tools\bin

2. 使用npx创建demo工程并运行工程

创建工程

首先使用npx创建名称为helloRN工程

npx @react-native-community/cli init helloRN
工程配置文件修改
gradle-wrapper.properties文件修改

报错:

react native Exception in thread "main" java.io.IOException: Downloading from https://services.gradle.org/distributions/gradle-8.10.2-all.zip failed: timeout (10000ms)

原因:https://services.gradle.org/distributions/gradle-8.10.2-all.zip 文件获取不到

解决办法

打开helloRN\android\wrapper\gradle-wrapper.properties文件

修改distributionUrl的url前缀值为https\://mirrors.cloud.tencent.com/gradle/

build.gradle文件修改

将其内容修改为:

buildscript {ext {buildToolsVersion = "35.0.0"minSdkVersion = 24compileSdkVersion = 35targetSdkVersion = 34ndkVersion = "27.1.12297006"kotlinVersion = "2.0.21"}repositories {maven { url 'https://maven.aliyun.com/repository/google'}//重点关注这一行maven { url 'https://dl.google.com/dl/android/maven2/' }mavenCentral()}dependencies {classpath("com.android.tools.build:gradle") // 不指定版本号classpath("com.facebook.react:react-native-gradle-plugin:0.77.0") // 版本号和react-native一样}
}
allprojects {repositories {maven{ url 'https://maven.aliyun.com/repository/google'} //重点关注这一行google()jcenter()}
}apply plugin: "com.facebook.react.rootproject"
运行helloRN工程

首先需要开启两个终端,使用终端1在工程目录下执行如下命令:

yarn start

使用终端2在工程目录下执行如下命令

yarn android

此时工程自动下载依赖文件...
如果出现下载react-android-0.73.1-debug.aarhermes-android-0.73.1-debug.aar文件超时的情况,请使用迅雷等工具,将完整下载链接复制到工具内下载,下载完成后,按如下表放置:

文件路径
react-android-0.73.1-debug.aarC:\Users\Think.gradle\caches\modules-2\files-2.1\com.facebook.react\react-android\0.73.1\路径下包含.pom文件的文件夹
hermes-android-0.73.1-debug.aarC:\Users\Think.gradle\caches\modules-2\files-2.1\com.facebook.react\hermes-android\0.73.1路径下包含.pom文件的文件夹

若未出现报错,则会出现BUILD SUCCESSFUL的提示,并在手机模拟器出现如下界面

虚拟机的使用

始终置顶

CTRL + M 打开调试框


http://www.ppmy.cn/news/1567961.html

相关文章

自定义数据集,使用 PyTorch 框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测

在本文中,我们将展示如何使用 NumPy 创建自定义数据集,利用 PyTorch 实现一个简单的逻辑回归模型,并在训练完成后保存该模型,最后加载模型并用它进行预测。 1. 创建自定义数据集 首先,我们使用 NumPy 创建一个简单的…

【C++动态规划 状态压缩】2597. 美丽子集的数目|2033

本文涉及知识点 C动态规划 LeetCode2597. 美丽子集的数目 给你一个由正整数组成的数组 nums 和一个 正 整数 k 。 如果 nums 的子集中,任意两个整数的绝对差均不等于 k ,则认为该子数组是一个 美丽 子集。 返回数组 nums 中 非空 且 美丽 的子集数目。…

http跳转https

1、第一种:不好使 在nginx的配置中,在https的server站点添加如下头部: add_header Strict-Transport-Security “max-age63072000; includeSubdomains; preload”; 这样当第一次以https方式访问我的网站,nginx则会告知客户端的浏览…

研发的立足之本到底是啥?

0 你的问题,我知道! 本文深入T型图“竖线”的立足之本:专业技术 技术赋能业务能力。研发在学习投入精力最多,也误区最多。 某粉丝感发展遇到瓶颈,项目都会做,但觉无提升,想跳槽。于是&#x…

react引入DingTalk-JinBuTi字体

要在React项目中引入DingTalk-JinBuTi字体,可以按照以下步骤操作: 1. 下载字体文件: 如果DingTalk-JinBuTi字体不是通过npm或yarn可直接安装的包,则需要从官方渠道下载字体文件。这通常包括.woff, .ttf, .eot, .svg等格式…

(开源)基于Django+Yolov8+Tensorflow的智能鸟类识别平台

1 项目简介(开源地址在文章结尾) 系统旨在为了帮助鸟类爱好者、学者、动物保护协会等群体更好的了解和保护鸟类动物。用户群体可以通过平台采集野外鸟类的保护动物照片和视频,甄别分类、实况分析鸟类保护动物,与全世界各地的用户&…

YOLOv11-ultralytics-8.3.67部分代码阅读笔记-head.py

head.py ultralytics\nn\modules\head.py 目录 head.py 1.所需的库和模块 2.class Detect(nn.Module): 3.class Segment(Detect): 4.class OBB(Detect): 5.class Pose(Detect): 6.class Classify(nn.Module): 7.class WorldDetect(Detect): 8.class RTDETRDec…

BGP分解实验·15——路由阻尼(抑制/衰减)实验

一个可以监控路由信息不稳定征兆的小特性,那些表现出不稳定的路由将会受到惩罚,直到它稳定下来为止。 实验拓扑如下: 配置两台路由器的基础连通性后,再到R2上设置半衰期5分钟、使用阈值750,惩罚阈值1500;并…