Cordova failed to install 'cordova-plugin-whitelist': Error: ENOENT: no such file or directory AndroidManifest.xml
Cordova failed to install 'cordova-plugin-whitelist': Error: ENOENT: no such file or directory AndroidManifest.xml
我在 OSx 10.13.2 上安装了 Cordova 8.0.0,Node v8.5.0 和 npm v5.5.1。
添加插件 cordova-plugin-ibeacon
后,当我执行 cordova platform add android
时,出现以下错误:
failed to install 'cordova-plugin-whitelist': Error: ENOENT: no such file or directory AndroidManifest.xml
截图:
您正在使用 cordova-android@~7.0.0
最近使用 Cordova 8.0.0
拉取 cordova-android 回购时,我遇到了同样的问题
将 cordova-android 降级到 6.4.0 如下:
cordova platform remove android
cordova platform add android@6.4.0
您正在使用 cordova 7.0.0 或 cordova 8.0.0,
IONIC 也观察到类似的问题
你会发现大多数插件都有这个问题
例如admobpro, admob, itablet, whitelist等
最好现在回滚到以前的 cordova 版本,即 6.3.0 或 6.4.0
如果您发现任何插件存在上述问题,请尝试此操作。
cordova platform remove android
cordova platform add android@6.3.0
或
cordova platform remove android
cordova platform add android@6.4.0
这有点晚了。但分享一些我遇到类似问题时的个人观察。
构建过程失败如果有一个旧插件未更新以与 platform@7.0.0 一起使用。至少我是这样的。安装这个不兼容的插件后,它会弄乱平台中的文件。之后尝试通过删除插件来挽救项目也会失败,因为安装时文件会放在错误的目录中。您必须删除平台 "cordova platform rm ",然后删除行为不当的插件 "cordova plugin rm " 和 re-add 在构建可以修复之前支持您的平台。
为什么 android@6.30 和 android@6.4.0 可能工作是因为它可能使用较旧的平台项目目录布局,它似乎使用顶层 /platforms/android 'res' 和 'libs' 文件夹的目录。
从 android@7.0.0 开始,我注意到它添加了 'app' 子目录,并且您的 'config.xml' 和 'res' 预计在 '/platforms/android/app/src/main/res/xml/config.xml' 而不是 '/platforms/android/res/xml/config.xml'.
较旧的插件可能有 installation/removal 将文件复制到错误位置的脚本。
解决此问题的唯一 2 种方法是按照 Bharat Biswal 的建议更新插件或降级平台。
如果有人有更明确的答案,那就太好了。
我在 OSx 10.13.2 上安装了 Cordova 8.0.0,Node v8.5.0 和 npm v5.5.1。
添加插件 cordova-plugin-ibeacon
后,当我执行 cordova platform add android
时,出现以下错误:
failed to install 'cordova-plugin-whitelist': Error: ENOENT: no such file or directory AndroidManifest.xml
截图:
您正在使用 cordova-android@~7.0.0
最近使用 Cordova 8.0.0
拉取 cordova-android 回购时,我遇到了同样的问题将 cordova-android 降级到 6.4.0 如下:
cordova platform remove android
cordova platform add android@6.4.0
您正在使用 cordova 7.0.0 或 cordova 8.0.0, IONIC 也观察到类似的问题
你会发现大多数插件都有这个问题 例如admobpro, admob, itablet, whitelist等
最好现在回滚到以前的 cordova 版本,即 6.3.0 或 6.4.0
如果您发现任何插件存在上述问题,请尝试此操作。
cordova platform remove android
cordova platform add android@6.3.0
或
cordova platform remove android
cordova platform add android@6.4.0
这有点晚了。但分享一些我遇到类似问题时的个人观察。
构建过程失败如果有一个旧插件未更新以与 platform@7.0.0 一起使用。至少我是这样的。安装这个不兼容的插件后,它会弄乱平台中的文件。之后尝试通过删除插件来挽救项目也会失败,因为安装时文件会放在错误的目录中。您必须删除平台 "cordova platform rm ",然后删除行为不当的插件 "cordova plugin rm " 和 re-add 在构建可以修复之前支持您的平台。
为什么 android@6.30 和 android@6.4.0 可能工作是因为它可能使用较旧的平台项目目录布局,它似乎使用顶层 /platforms/android 'res' 和 'libs' 文件夹的目录。
从 android@7.0.0 开始,我注意到它添加了 'app' 子目录,并且您的 'config.xml' 和 'res' 预计在 '/platforms/android/app/src/main/res/xml/config.xml' 而不是 '/platforms/android/res/xml/config.xml'.
较旧的插件可能有 installation/removal 将文件复制到错误位置的脚本。
解决此问题的唯一 2 种方法是按照 Bharat Biswal 的建议更新插件或降级平台。
如果有人有更明确的答案,那就太好了。