错误"cordova版本未被识别为内部或外部命令、可操作程序或批处理文件"



当我命令ionic cordova准备android时,我收到这个错误:

cordovaversion"' is not recognized as an internal or external command, operable program or batch file.
at ChildProcess.exithandler (node:child_process:397:12)
at ChildProcess.emit (node:events:390:28)
at maybeClose (node:internal/child_process:1064:16)
at Socket.<anonymous> (node:internal/child_process:450:11)
at Socket.emit (node:events:390:28)
at Pipe.<anonymous> (node:net:687:12) {
killed: false,
code: 1,
signal: null,
cmd: '"C:\Programacao\appMalote216\platforms\android\cordova\version"'
}
[ERROR] An error occurred while running subprocess cordova.

当我试图满足Google Play新的API级别目标政策时,我遇到了这个问题。当我创建android@9平台我可以正常运行命令,甚至生成一个签名的apk,当我添加android@10当我发出prepare命令时,平台出现了这个错误。

开发环境配置:

Ionic:
Ionic CLI                     : 6.18.1 (C:Usersmicro-85AppDataRoamingnpmnode_modules@ioniccli)
Ionic Framework               : @ionic/angular 5.9.3
@angular-devkit/build-angular : 0.1000.8
@angular-devkit/schematics    : 10.0.8
@angular/cli                  : 10.0.8
@ionic/angular-toolkit        : 2.3.3
Cordova:
Cordova CLI       : 11.0.0
Cordova Platforms : android 10.1.1
Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 5.0.0, (and 20 other plugins)
Utility:
cordova-res : 0.15.4
native-run  : 1.5.0
System:
Android SDK Tools : 26.1.1 (C:Usersmicro-85AppDataLocalAndroidSdk)
NodeJS            : v16.13.2 (C:Program Filesnodejsnode.exe)
npm               : 8.4.0
OS                : Windows 10
Node:v16.13.2
NPM: 8.4.0
Gradle: 7.3.3

类似问题:https://github.com/OneSignal/OneSignal-Cordova-SDK/issues/725

我在Windows上遇到了同样的问题。问题是Windows CMD无法将文件平台/android/codova/version识别为命令,即使它存在。(因为这是一个bash脚本(。

  1. 解决方案1

您可以通过创建一个.bat文件来修复它,该文件将运行节点脚本版本。

例如,创建.bat平台/android/codova/version.bat,内容如下:

node %~dpnx0
  1. 解决方案2:如果安装了bash,并且在使用npm运行脚本时出现此错误,则可以将npm配置为使用git-bash而不是Windows CMD。

    npm配置集脚本shell">

例如

npm config set script-shell "C:\Program Files\Git\usr\bin\bash.exe" 

最新更新