RT:

cordova ionic 环境搭建好之后,需要添加平台才能打包,添加平台如果出错:Error:spawn EACCES,

原因是因为没添加hooks, 请使用 ionic add hooks,这条命令。hooks 是用来检查代码是否工程化的,其实 ionic build 是合并了两条命令

ionic prepare(生成www的过程) 和 ionic compare。hooks 会在 这两条命令之前和之后执行,例如:before_prepare 和 after_prepare, before_compare 和 after_compare。

before_prepare: ionic prepare 之前执行,也就是生成 www 目录之前。这个时候适合做代码压缩(gulp)、删除不必要文件(比如sass)。gulp 的部分就再也不用去手动执行 gulp build —release 了。

after_prepare: ionic prepare 之后执行,这个地方就可以做一些 appid 的替换工作,我们可以通过 process.env.CORDOVA_CMDLINE 获取到命令行输入。例如我输入 ionic build —dev 或者 ionic build —release ,我就可以拿到当前打包需要的参数是 dev 本地开发配置,release 线上生产环境配置。

参考文档:

https://github.com/lanceli/cnodejs-ionic/tree/master/hooks

https://segmentfault.com/a/1190000004420853

ionic platform add ios, Error:spawn EACCES的更多相关文章

  1. phonegap platform add ios 出错的问题

    在Mac上新安装的Phonegap,版本3.3-0.18.0. 本来创建项目后按教程: http://docs.phonegap.com/en/edge/guide_platforms_ios_ind ...

  2. Error: spawn EACCES

    执行sudo cordova emulate ios: 错误: Running command: /Users/frank/xx/hybird_web/hooks/after_prepare/010_ ...

  3. React Native 报错 Error: spawn EACCES 权限

    权限不足,运行命令修改权限 chmod android/gradlew

  4. mac系统 Xcode打包ionic项目(iOS)

    一.环境搭建 1. 安装Node.js,使用node -v 查询版本号: 2. 安装ionic: $ sudo npm install -g cordova(可以指定版本,如cordova@7.0.1 ...

  5. ionic cordova platform add android Cordova failed to install plugin Error: ENOENT: no such file or directory AndroidManifest.xml

    问题描述: 在ionic 项目中出现编译android 的时候 出现 Cordova failed to install plugin  Error: ENOENT: no such file or ...

  6. nodejs在spawn中执行npm报错 [Error: spawn ENOENT]” errors

    描述: 上代码 var ps = require('child_process').spawn("npm", ['install'], { stdio: 'inherit', cw ...

  7. taro & Error: spawn taro ENOENT

    taro & Error: spawn taro ENOENT https://stackoverflow.com/questions/27688804/how-do-i-debug-erro ...

  8. cordova platform add specified version

    cordova platform add specified version 命令格式 cordova platform add android@4.0 可用的版本 Valid install tar ...

  9. 【ionic】Mac IOS下真机调试

    模拟调试不能保证真机一定没问题,所以真机调试是非常必要的一步 IOS设备 启用设备调试 在IOS设备中(Iphone,Ipad)中开始web检测器 设备->safari->高级->w ...

随机推荐

  1. 微软Power BI 每月功能更新系列——10月Power BI 新功能学习

    Power BI Desktop10月产品功能摘要 本月Power Plus Desktop的更新充满了整个产品的小型和大型改进.一个巨大的更新是Power BI服务支持我们的复合模型和聚合预览.这实 ...

  2. Python学习笔记第四周

    目录 一.基础概念 1.装饰器 1.装饰器本质就是函数 2.实现装饰器知识储备 1.函数即变量 2.高阶函数 3.嵌套函数 例子 1.将一个函数名作为实参传递给另外一个函数 2.返回值为函数名 3.函 ...

  3. Django之模版层-语法:标签 {% %}

    标签 {% %} for循环以及for..empty.. <h4>for标签</h4> {% for i in lis %} <p>{{ i }}</p> ...

  4. CodeForces - 616F:Expensive Strings (后缀自动机)

    You are given n strings ti. Each string has cost ci. Let's define the function of string , where ps, ...

  5. java-抽象类的特点

    1.抽象类和抽象方法必须用abstract关键字修饰. - abstract class 类名() - public abstract void eat(); 2.抽象类不一定有抽象方法,有抽象方法的 ...

  6. eclipse 启动tomcat 出现错误Could not publish server configuration: null. java.lang.NullPointerException

    若出现以上错误,则很有可能是修改了conf/server.xml的内容,将改过的地方改回去,然后重启tomcat 就可以啦

  7. 深入学习Motan系列(一)——入门及知识zookeeper储备

    背景以及说明: 最近逮到个RPC框架,打算深入学习,框架千千万,只有懂得内部原理,才能应对复杂的业务,进行自定义化系统. 这个系列的Motan文章也是自己慢慢摸索的轨迹,将这个过程记录下来,一是提升自 ...

  8. Intellij部署Tomcat问题

    Intellij部署Tomcat问题 Warnings:No artifacts marked for development 切换到Development标签页 选择+按钮,并选择Artifacts ...

  9. Java中类的构造方法

    constructor:构造函数. 在创建对象的时候,对象成员可以由构造函数方法进行初始化. new对象时,都是用构造方法进行实例化的: 例如:Test test = new Test("a ...

  10. 【BZOJ2120】数颜色

    看代码学习好,好学好懂好ac 原题: 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问.墨墨会像你发布如下指令: 1. Q L R代表询问你从第L支画笔到第R支画笔中 ...