繁体   English   中英

使用Cordova-Android 6.2.0的Cordova错误 - getFileResources不是一个函数

[英]Cordova Error using Cordova-Android 6.2.0 - getFileResources is not a function

我有一个离子/ cordova项目使用:

cordova-android@6.2.0
cordova-plugin-crosswalk-webview@2.3.0
cordova cli 6.4.0
ionic 1.3.3

当我尝试添加Android平台时,我得到以下输出

================

$ ionic platform add android@6.2.0

Adding android project...


Creating Cordova project for the Android platform:

    Path: platforms/android
    Package: com.ionicframework.name
    Name: name
    Activity: MainActivity
    Android target: android-25

Subproject Path: CordovaLib

Android project created with cordova-android@6.2.0

错误:cordovaProject.projectConfig.getFileResources不是函数

看来这个问题与cordova-android@6.2.0中的一个错误相关,如下所示: https ://issues.apache.org/jira/browse/CB-12633

我现在已将我的系统更新为cordova-cli-cordova@6.5.0和cordova-android@6.2.1,它似乎有效。

更新至cordova cli版本6:

npm install -g cordova@6

然后添加正确版本的cordova-android

cordova platform add android@6

与这个问题没有直接关系,但是一旦我开始工作,我的系统确实抱怨在我尝试构建我的应用程序时没有设置gradle路径,所以我按照这里的步骤操作: https//gradle.org/install# with-homebrew ,现在所有构建成功。

更新cordova

npm install -g cordova

然后尝试添加平台或者如果新版本的cordova有任何问题,请在下面使用

cordova版本6.4.0和android 6.2.1存在问题。 因此,请尝试使用以下兼容版本

cordova版本必须是6.4.0

npm install -g cordova@6.4.0

在您的项目中安装android

cordova platform add android@6.1.2  

要么

ionic platform add android@6.1.2

不管@IonicBurger上面说过什么。 还要确保对于基于Cordova的项目,每个cordova版本都特定依赖于安装的android SDK和android构建工具。

我目前正在使用Ionic 3,我遇到了同样的问题。

  • 确保cordova是最新的: npm i cordova -g将完成这项工作。 请注意检查cordova -v安装了什么版本的cordova。 之后确保你已经安装了离子原生境; 这通常带有离子安装,但在本地再次使用npm i ionic-native --save安装它不会有害

  • 查看所有可用平台: ionic cordova platform list 一些插件,如相机,媒体等具有非常特定的cordova要求(请参阅此处

  • 当你安装插件时,你有时会遇到这样的错误: '插件不支持这个项目的cordova-android版本。 cordova-android:6.1.2,版本要求失败:> = 6.3.0为'android'跳过'cordova-plugin-camera' 没关系。 这可以通过以上两个步骤来解决。 最重要的是要记住这一点:确保您安装了最新的Android Build ToolsSDK 有关更多详细信息,请参阅下图: 在此输入图像描述

请注意,此答案最适合Windows环境。

更新到cordova@6.5.0不起作用 - 我收到错误,找不到此版本

而是恢复cordova@6.1.2确实有效

cordova platform update android@6.1.2 --save

这不是降低cordova版本的正确解决方案。 如果你想使用最新版本的cordova和ionic,而不是使用

ionic cordova platform add android

做就是了:

cordova platform add android

奇迹般有效!

好编码!

在两个离子项目之间切换时,这个问题出现了。 我通过尝试另一个节点版本修复它,它的工作原理。

我使用nvm使用xxx并通过降级到以前的nodejs版本,我能够构建我的项目。

希望它能帮助别人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM