gpt4 book ai didi

Cordova 错误: Using "requireCordovaModule" to load non-cordova module "q" is not supported

转载 作者:行者123 更新时间:2023-12-03 05:51:23 36 4
gpt4 key购买 nike

我注意到我们的 CI 上的构建由于以下错误而开始失败:

Discovered plugin "cordova-plugin-app-version" in config.xml. Adding it to the project

Installing "cordova-plugin-app-version" for android

Adding cordova-plugin-app-version to package.json
Using "requireCordovaModule" to load non-cordova module "q" is not supported. Instead, add this module to your dependencies and use regular "require" to load it.
[ERROR] Exception:
The command '/bin/sh -c ionic cordova platforms add android' returned a non-zero code: 1

iOS 和 Android 上都会出现同样的问题。

经过一番挖掘,我发现cordova 9.0.0最近发布。

有一些与此问题相关的更改。

  • GH-710 放弃 Q 依赖并使用原生 Promise
  • GH-707 弃用非 Cordova 模块的 requireCordovaModule

我的第一个想法是,不知何故,我们没有锁定 cordova 版本,但我们确实将其锁定到 dockerfile 中的 cordova@8.1.2 。我还在我的本地计算机上测试了它,我的 cordova 版本也为 8.1.2 。所以这不是问题。

进一步查看日志后,我注意到一些如下日志:

cordova-android 版本检查失败(“/app/platforms/android/cordova/version”),仍继续。

有几个这样的情况,比如 3 或 4 个,但是当这种情况发生时构建并没有停止。

然后我再次运行旧提交的构建,它工作正常,可能是因为某些层被缓存了。但是,如果我只更改一个包(我更新了 prettier 来尝试一下),则会导致大多数层被重建,并且构建因上述错误而崩溃。

似乎某些更深层次的依赖项已更新,从而导致了问题。

感谢您的帮助。

最佳答案

我已返回到之前的版本:8.1.2。

npm install -g cordova@8.1.2

现在,它又可以工作了。

如果您想继续使用最新版本的 cordova,请参阅以下说明:
https://stackoverflow.com/a/58956882/9536897

关于 Cordova 错误: Using "requireCordovaModule" to load non-cordova module "q" is not supported,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55304065/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com