ReactNative之坑爹的在线安装
编译一个github上ReactNative应用,根据说明只有3步:
npm install
react-native run-android
enjoy
但几个步骤实在是一波三折充满着坎坷,一点都不enjoy。
那就让我们来说一下这个有(keng)趣(die)的故事吧
执行npm install主要的作用在安装第三方依赖包,依赖包的内容在package.json里定义。
npm是node.js里的工具,本人之前并不了解。既然要学习ReactNative就需要了解npm究竟在搞什么鬼。
像这样在线安装的方式是很常见的,已解决项目依赖的问题。ubuntu或者其他的版本的liunx中都像apt-get这样的命令来安装/更新软件。
java程序如果使用maven编译,或者android studio中使用gradle,或者android sdk都是采用在线更新的方式。
实际上本人一直不喜欢在线更新,因为在线更新的工具下载速度往往比不上专门的下载工具,有的还不支持断点续传,更何况有的国外线路下载本来就很慢。更严重的是中国的网络屏蔽了很多国外的资源导致下载失败。
因此往往还要研究怎么手动跟新,看似简单反而麻烦,还不如直接提供下载地址。
正式因为如此,本人在执行npm install的时候,很久也没有动静,经过一番研究后发现,执行npm install后会在相应的目录下生成一个node_modules目录,这个目录中存放第三方的依赖库,ReactNative程序会有一个react-native目录,react-native 这个目录比较大,所以导致执行npm install半天没有反应。
由于速度太慢,我就把文件夹从其他的地方拷贝过来,发现也是可以的(这个目录文件比较多,直接拷贝也不是很快),再执行命令就会更新其他的依赖包,一般依赖包都不是很大,如果网络没有问题,速度还可以,就是react-native这个依赖包比较大。
但不幸的是,我这里是是铁通的宽带,尽然下载失败,于是我就想到,是不是有国内的镜像呢,百度上查了一下还真有国内的镜像:npm淘宝镜像
http://npm.taobao.org/
npm install --registry=https://registry.npm.taobao.org
真是万能的淘宝啊。
然后执行
node node_modules\react-native\packager\packager.js
就可以运行服务器端程序了,如果是windows下运行,需要更加前面文章中修复服务器端的bug(如果bug依然存在的话)。
如果是用windows编译安卓端loader,也需要根据之前的文章来设置。
这个项目中,安卓端引用的ReactNative已经更新到0.12了,不需要下载前面文章中说的aar了,这样要修复前面文章中android端的bug只需要修改依赖项的版本就可以了,我在写前面那篇文的时候还没更新,ReactNative的更新速度还是挺快的。
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.facebook.react:react-native:0.12.+'
}
github上ReactNative项目地址:
https://github.com/race604/ZhiHuDaily-React-Native
ReactNative之坑爹的在线安装的更多相关文章
- centos在线安装svn
centos在线安装svn 用下列命令安装svn服务 yum install subversion 创建svn版本库目录 mkdir -p /var/svn/svnrepos 创建版本库 svnadm ...
- Windows Server 2012 R2在线安装.NET Framework3.5
Windows Server 2012 (R2) 默认没有安装 .NET Framework 3.5,但可以通过在线安装或指定备用源路径方式. 之前在这个 在Win Server 2012中安装.NE ...
- IOS在线安装App
在越狱设备上可以安装,如果设备不越狱也想安装,就要企业发布权限了,可惜我没有,所以不能测试了! 1.创建ipa及plist文件: XCode菜单栏->Product->Archive-&g ...
- eclipse怎样在线安装hibernate tools插件并使用
不知不觉,小Alan已经将近3个月没有上班了,最近在复习一些知识,随时准备回到代码世界的战场,今天复习到了Hibernate,记录一下一点点小知识,那就是eclipse下hibernate Tools ...
- Linux:Ubuntu 14.04 Server 离线安装Jjava8(及在线安装)
(离线安装)首先,通过winscp上传本地下载好的jdk-8u102-linux-x64.gz (离线安装)将jdk-8u102-linux-x64.gz解压到到/usr/lib/jvm下,并把文件夹 ...
- Eclipse在线安装SVN
一.SVN在线安装 下面为在线安装SVN插件.以下是在线安装步骤: 其中http://subclipse.tigris.org/update_1.10.x是最新版本的SVN插件的下载站点[subcli ...
- Android开发学习总结(四)——Eclipse在线安装ADT插件
要想使用Eclipse开发Android应用,首先要安装一个ADT插件,在此记录一下在Eclipse中采用在线安装的方式ADT插件,我使用的Eclipse版本是:eclipse-jee-luna-SR ...
- 软件包管理 之 Fedora/Redhat 在线安装更新软件包,yum 篇 ── 给新手指南
在本文中,我们主要解介绍 Fedora core 4.0 通过软件包管理工具yum来在线安装更新软件:关于apt工具应用,我们会在另外一篇中介绍: 一. yum 的使用:有些初学Linux的弟兄可能问 ...
- iOS客户端的在线安装和更新——针对ADHoc证书
这篇文章纯给自己留个备份,所以对AdHoc证书内部分发和对iOS客户端开发不了解的请直接无视. 一般在iOS游戏或应用开发过程中,正式发布到App Store之前,都需要内部的测试,客户端的安装是个不 ...
随机推荐
- mybatis xml 中的特殊符转义字符号和模糊查询
xml特殊符号转义写法 < < 小于 <= <= 小于或等于 > > 大于 >= >= 大于或等于 <> <> 不等于 & ...
- Spring、mybaits整合
mybatis.cfg.xml <!DOCTYPE configuration PUBLIC "-//mybatis.org/DTD Config 3.0//EN" &quo ...
- Scalaz(15)- Monad:依赖注入-Reader besides Cake
我们可以用Monad Reader来实现依赖注入(dependency injection DI or IOC)功能.Scala界中比较常用的不附加任何Framework的依赖注入方式可以说是Cake ...
- 【转】MyEclipse 2015优化技巧
MyEclipse 2015优化技巧 MyEclipse 2015优化速度方案仍然主要有这么几个方面:去除无需加载的模块.取消冗余的配置.去除不必要的检查.关闭更新. 第一步: 去除不需要加载的模块 ...
- requirejs:让人迷惑的路径解析
接触过requirejs的童鞋可能都知道,无论是通过define来定义模块,还是通过require来加载模块,模块依赖声明都是很重要的一步.而其中涉及到的模块路径解析,对于新手来说,有的时候会让人觉得 ...
- go语言编辑器:liteide
LiteIDE is a simple, open source, cross-platform Go IDE. LiteIDE是一款开源.跨平台的轻量级Go语言集成开发环境(IDE). 项目地址:h ...
- 运用Gulp压缩文件编译文件。包括css js html image
安装node.js npm 以及安装gulp等方法我就不在这里赘述了. 接下里我主要介绍的是Gulpfile文件里面的配置该如何书写. var gulp = require('gulp');//引 ...
- 微软正开发Office Reader和Office Lens
据熟知微软Office计划的消息人士透露,微软目前正开发新Windows 8风格的Office应用程序,该应用程序代号被微软称为Office Reader,而为Windows Phone开发的应用程序 ...
- 无线安全审计工具 Fern WiFi Cracker
使用这款工具前最好自定义一个MAC地址,以便隐藏我们的真实MAC地址信息. 由于Fern WiFi Cracker是图形界面的,不需要敲命令,所以操作起来比Aircrack-ng简单了许多. 首先选择 ...
- 智者当借力而行, 借助Autodesk应用程序商店实现名利双收
有没有注意到这个"精选应用"菜单?有没有想过这个菜单下的应用是从哪里来的?你的应用也可以出现在这里哦~ 如果你还不知道,Autodesk在几年前就发布了Autodesk应用程序商店 ...