npm 错误_路途…的博客-程序员秘密

config.xml文件读取错误
执行命令:ionic cordova run android -l -c

出现错误:cp: copyFileSync: could not write to dest file (code=ENOENT):E:\work\app\cloudMall\platforms\android\res\xml\config.xml


image.png

E:\work\app\cloudMall1\platforms\android\res

发现目录缺少很多文件
解决:再次尝试remove android平台重新添加。
但是问题依然存在。


image.png

发现add 的是最新的7.0
重新制定版本添加android平台

ionic cordova platform add android@6.4.0

结果成功添加,res目录里面终于有文件了。


image.png


作者:面迎清风醉
链接:https://www.jianshu.com/p/f4b681b67868
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

ionic cordova 中插件一旦添加到项目中,以后如需对插件进行升级,需先卸载掉原先的插件,在重新安装

 
Error: Failed to fetch plugin cordova-plugin-tts via registry.
    Probably this is either a connection problem, or plugin spec is incorrect.
    Check your connection and plugin name/version/URL.
    Error: cmd: Command failed with exit code 1 Error output:
    'C:\Windows\system32\npm' is not recognized as an internal or external command,

operable program or batch file.

Try running the install command with --nofetch switch.

npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法


npm cache clean --force

npm install -g [email protected] --force

Fatal: Unable to connect to github.com


The problem was the git port is restricted.
I fixed this with:
git config --global url.https://github.com/.insteadOf git://github.com/

failed to install 'cordova-plugin-whitelist': Error: ENOENT: 

no such file or directory AndroidManifest.xml

you are using cordova 7.0.0 or cordova 8.0.0, similar issue is observed with IONIC as well

You will find this issues with most of the plugins such as admobpro, admob, itablet, whitelist etc.

Better for now roll back to previous cordova version i.e 6.3.0 or 6.4.0

If you see mentioned issues with any of plugins try this.

cordova platform remove android
cordova platform add [email protected] 

OR

cordova platform remove android
cordova platform add [email protected]

自从升级android studio2.3.1后,运行ionic项目时无法再在android平台上启动。网上查了很多信息后,得知是android sdk废弃android命令,以及改变了目录结构。

解决办法如下:

 android版本问题

  • 移除android sdk目录的tools文件夹

  • 下载 
    https://dl.google.com/android/repository/tools_r25.2.3-linux.zip

  • 解压出来,将解压得到的tools文件夹复制到android sdk目录下


检查现有平台所需要安装的依赖包。

[javascript] view plain copy
  1. <span style="font-size:18px;">$ionic cordova requirements</span>  

更新SDK
[javascript] view plain copy
  1. $D:\work\android\android-sdk-windows\tools\android.bat 

npm错误:无法建立tunneling套接字,原因=连接ETIMEDOUT(npm error: tunneling socket could not be established, cause=connect ETIMEDOUT)

npm ERR! code ECONNRESET

npm ERR! network tunneling socket could not be established, cause=connect ETIMEDOUT 198.105.254.228:8080
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'

Removing the proxy settings resolved the issue:

npm config rm proxy
npm config rm https-proxy

npm config set registry=http://registry.npmjs.org/

npm config set strict-ssl false



安装一个依赖包报错了,npm WARN checkPermissions Missing write access

权限解决办法

 
删除掉 C:\Users\dd\AppData\Roaming\npm-cache\

C:\Users\dd\AppData\Roaming\npm\  两个文件夹 以管理员身份重新执行 npm install -g



[GFailed to restore plugin "cordova-plugin-statusbar" from config.xml. You might need to try adding it again.

Error: Failed to fetch plugin https://github.com/apache/cordova-plugin-statusbar.git via registry.

cordova plugin add https://github.com/apache/cordova-plugin-statusbar.git

插件问题:检查package.json文件的版本号

                  切换npm 源头

                   去cordova plugin 官网上找插件及使用

                去github上找cordova插件 注意搜索关键词

[2K?[GFailed to restore plugin "cordova-plugin-geolocation" from config.xml. You might need to try adding it again

. Error: Failed to fetch plugin [email protected]~2.4.4-dev via registry.

Plugin doesn't support this project's cordova-android version. cordova-android: 7.0.0, failed version requirement:
      <6.3.0
cordova run android
(node:19192) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Android SDK not found. Make sure that it is installed. If it is not at the default location, set the ANDROID_HOME environment variable.

下面的报错是cordova run android时报的,其实android_home是存在的,根本问题是上面的报错,cordova-android版本高于需求版本,需求版本低于6.3.0

  1. cordova platform rm android
  2. cordova platform remove android
  3. cordova platform add [email protected]
    好像第2步与第一步重复,可以省略,执行后就ok了
    然后 cordova run android:
    这里写图片描述

参考:https://cordova.apache.org/blog/

以上命令:

  1. cordova run android
  2. cordova platform rm android
  3. cordova platform remove android
  4. cordova platform add android

报错如下:

npm ERR! path E:\ionic3-leafletdemo-master\node_modules\dashdash
npm ERR! code EEXIST
npm ERR! errno -4075
npm ERR! syscall mkdir
npm ERR! EEXIST: file already exists, mkdir 'E:\ionic3-leafletdemo-master\node_modules\dashdash'
npm ERR! File exists: E:\ionic3-leafletdemo-master\node_modules\dashdash
npm ERR! Move it away, and try again.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\lenovo\AppData\Roaming\npm-cache\_logs\2018-04-13T08_54_14_093Z-debug.log

 optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\ionic\node_modules\fsevents):

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected]^1.0.0 (node_modules\ch
okidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]
1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}
)
npm WARN [email protected] requires a peer of [email protected]^6.0.0 but none was installed

 fsevent是mac osx系统的,在win或者Linux下使用了 所以会有警告,忽略即可。

安装webpack出现警告: [email protected]^1.0.0 (node_modules\chokidar\node_modules\fsevents):

警告如下:

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected]^1.0.0 (node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN [email protected] No description
npm WARN [email protected] No repository field.

原因是因为: fsevent是mac osx系统的,在win或者Linux下使用了 所以会有警告,忽略即可。意思就是你已经安装成功了。

npm install 时遇见
这里写图片描述

npm install --global --production windows-build-tools 

3. 在成功安装ionic 后,继续安装 报错中缺失的 '@ionic/app-scripts',

npm install @ionic/[email protected] --save-dev
-save-dev是指将包信息添加到devDependencies,表示你开发时依赖的包裹。
-save是指将包信息添加到dependencies,表示你发布时依赖的包裹。

错误信息

Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning.

解决方法

在“/node_modules/@ionic/app-scripts/dist/sass.js”路径的“sass.js”文件,在postcssOptions参数中添加“from: undefined”。添加后效果如下:

[plain]  view plain  copy
  1. var postcssOptions = {  
  2.     from: undefined,  
  3.     to: path_1.basename(sassConfig.outFile),  
  4.     map: autoPrefixerMapOptions  
  5. };  



报错的原因:
cordova在6.4.0(cordova-android在6.1.2)之后,会要求安装Gradle,基于Gradle来编译、打包android。(具体版本号有待考证,但是需要安装Gradle属实)

解决办法:

1、手动下载gradle
gradle-x.x-bin.zip (x.x代表版本)
根据需要下载某一版本
地址: (https://services.gradle.org/distributions)
我下载的是gradle-4.1

下载完成后,解压到任意文件夹下

2、添加环境变量
PATH=D:\gradle-4.1\bin

3、关闭cmd

4、打开cmd,输入gradle -v,查看是否安装成功

5、继续使用ionic cordova build android。

INSTALL_FAILED_UPDATE_INCOMPATIBLE

原因:就是你的安装包与之前设备上的安装包签名不一致。百度的时候,有的人说:运行太多次也会出现上述的问题,但我没遇到过。

简单处理

如果你的程序只是自己跑着玩的,不是很重要的程序,那么你就改个包名就好了。之前,我都是这样处理的。

步骤:如图:

 

但是实际工作中,是不允许我们改包名,比如关联到了微信,支付宝,百度地图等,我们的包名是有提交到他们的官网上的。

那么怎么办呢?

提供一个比较坑的方法:如果是测试手机,那么格式化测试手机就好了。

以下是比较完整的一次排查过程:

问题:调试的时候,用的是默认签名的方式(即debug签名),导出的时候,用的是自己的debug签名,在同一台手机上安装不上。

解决过程:

如果你以前的程序是采用默认签名的方式(即debug签名),一旦换了新的签名应用将不能覆盖安装,必须将原先的程序卸载掉,才能安装上。

------> 别人都是卸载之后就可以安装上了,但是我的手机不行。

------> 我 :卸载了旧的,也root,删掉了data/data/包名。

------> 安装提示:替换应用,销售小助手1.0替换为1.0..提示程序未安装。

------> 是不是 系统 保存了相关的 包名和签名信息 ? 

------> 是的话,也百度不到这个信息放哪里了。

继续百度:发现包名信息存放在 /data/system/packages.xml 中,需要root手机才可以从手机上看到这个文件。

------> 我们删除该应用包含的包名信息就好了。

步骤:

1. 采用 "adb uninstall 包名"  卸载之前的安装包,然后试一下是否能安装,不行再执行下一步。 --- 正常,执行这步就能解决问题

2. 在 /data/system/packages.xml 文件中删除该应用包含的包名信息就好了

   2.1 我的做法:root手机,我的是魅族,直接可以root。之后安装RE管理器,进入/data/system/packages.xml把该文件复制到其他地方,共享到电脑,电脑上修改后,在覆盖原文件。

   参考做法:我的手机不行。 -- 都要root手机

   2.2 使用adb pull命令将这个文件导出,修改完,并用 adb push导入。

   2.3 上述步骤不行,先adb remount (意思是 重新挂载系统分区)再adb pull命令将这个文件导出,修改完,并用 adb push导入。

   2.4 上述步骤不行,

         ---> 执行  adb shell  命令  -- 执行的是Linux的命令

         ---> su (手机应该会弹出权限信息提示~~告诉你需要管理权限,并确认)  -- 获得超级权限

         ---> ls -l (查看当前目录下所有可见文件的详细属性)  drwxrwx--x   (d--文件夹)

                

               这边怎么跑出一个system?回答:没有听说过Android除了Root还有system权限  你说的是user权限吧

               参考:http://bbs.csdn.net/topics/360175988

         ---> mount -o remount,rw /data (重新将文件夹为可读可写。)  我的手机出现( Operation not permitted),没办法下一步

         ---> chmod 777 /data 

         或者参考别人的做法:http://blog.sina.com.cn/s/blog_4ba5b45e0102ek4k.html 

   2.5 在不行,使用2.1方法。

3. 重新安装新的应用即可






版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/liudongdong19/article/details/79929845

智能推荐

(二)Nginx安装配置、部署前端项目_韩亮老师的博客-程序员秘密_nginx 配置前端

​1、官网下载nginx安装文件,并上传 master节点的 /mnt/tools/文件夹下下载地址:[https://nginx.org/download/nginx-1.18.0.tar.gz](https://nginx.org/download/nginx-1.18.0.tar.gz)​2、解压tar -zvxf /mnt/tools/nginx-1.18.0.tar.gz -C /mnt/training/3、配置安装模块:#进入/mnt/training/nginx-1.18

MLAG与vPC之间有什么区别?_audrey-luo的博客-程序员秘密_mlag

如今,越来越多的企业开始利用数据中心虚拟化来降低成本和简化数据流,而为了确保数据可以在数据中心和业务位置之间实现无缝传输,网络容量需求将会大大增加。为了适应这种趋势发展,业界正在寻找通过连接尽可能多的网络设备来增强网络容量的方法,例如,MLAG和vPC,这两种链路聚合技术可连接多台以太网交换机,增加网络容量。那么您了解它们吗?两者之间有何不同?本文将对此展开全面的介绍。MLAG是什么?MLAG(多机箱链路聚合)是一种启用来自主机的二层多路径以获得额外的带宽或链路弹性的非标准协议,由于该协议是一种公共

CISCO数据中心虚拟化之vPC技术和配置_achejq的博客-程序员秘密

最近在研究数据中心功能时发现CISCO有一个虚拟化技术叫vPC的技术,今天就把我研究的成果分享出来。什么是vPC(virtual port channel)?研究了大半天,其实它就是一个可以跨不同设备的port-channel技术。它的作用:可以实现网络冗余,可以跨设备进行端口聚合,增加链路带宽,当链路故障时比生成树协议收敛时间还快。下面我们就说说为什么会出现vPC技术。如上图所示

h5外卖源码php_从零搭建外卖CPS平台小程序开发_m0_56783267的博客-程序员秘密

直到看到了一个好友分享到外卖 CPS,觉得这是一个机会,不仅任何地方都可以做,而且门槛相对较低。所以我最近分析了将近 30 个外卖大号,分析了他们的引流流程,总结一下他们有哪些可以值得我们借鉴的地方。希望对大家有所启发。当然最主要的还是着手去做。外卖cps带分销返利源码源代码地址http://www.mybei.cn搭建步骤下载以上源代码到本地http://www.mybei.cn成品展示截图步骤下载以上源代码到本地http://www.mybei.cn修改为你自己的微信

podman加速器配置 && Harbor搭建私人仓库_天外来物_的博客-程序员秘密

[[email protected] containers]# pwd/etc/containers[[email protected] containers]# vim registries.conf......unqualified-search-registries = ["docker.io"][[registry]]prefix = "docker.io"location = "j7nfsalu.mirror.aliyuncs.com"......[[email protected] ~]# c

随便推点

日语中的接打电话礼貌用语_方长存的博客-程序员秘密

1 接电话的场合& おはようございます、○○会社です。& はい、○○会社でございます。& はい、○○会社、田中がうけたまわっております。& おはようございます、○○会社、××部でございます。 2 打电话的场合& おはようございます、いつもお世话になります、○○社の铃木と申しますが。 & いつもお世话になっております、私○○社の铃木と申しますが。顾客に対して电话応

PS188——谱瑞(Parade)推动的 Type-C扩展坞红海战略_Type_C_Ken的博客-程序员秘密_ps186芯片

PS188——谱瑞(Parade)推动的 Type-C扩展坞红海战略两年前谱瑞(Parade)收购睿思科技(Fresco Logic)的时候,没有人会想到,扩展坞行业老大已经准备好主动发起价格战了。

Linux系统I/O模型和网络I/O模型_白-胖-子的博客-程序员秘密

计算机I/OI/O在计算机中指Input/Output,Linux服务器 I/O 原理和流程内核空间和用户空间数据交换具体参见:https://blog.csdn.net/timonium/article/details/117775331Linux系统I/O模型和网络I/O模型基于Linux服务器I/O原理提出的数据交换模式架构说人话:IO模型就是一种数据传递的设计方案太长不看版本同步和异步同步:使用天然气老水壶烧水,得盯着异步:使用物联网电水壶烧水,水烧开了自动停了还

数据类型(五大基本类型,3种特殊类型)_融极的博客-程序员秘密_数据类型有哪几种

概述官方文档Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LR

Android中集成环信_zhwadezh的博客-程序员秘密_安卓集成环信

一、 环信的概念: 二、 环信的官网:http://www.easemob.com/三、 集成环信到APP只是修改背景和图标需要一两天时间,如果更复杂修改估计需要5—7天时间。四、 集成需要的步骤:  五、 环信我的开发账号:账号:[email protected];密码:wade123456.注册的步骤:1.在首页点击注册,到如下图: 信息填写完之后,在邮箱激活。再登录。登陆完界面如下: 2.创建...

推荐文章

热门文章

相关标签