在Debian OS(10.0 /破坏者)上,我安装了cordova:
npm install -g cordova
+ cordova@9.0.0
运行cordova时,无论有无参数,我都会得到:
Error: Cannot find module 'external-editor'
节点,npm版本:
npm --version
6.10.1
node --version
v12.6.0
npm list
cordova@1.0.0 /opt/cordova
|--- external-editor@3.1.0
Here it says: cordova@1.0.0 while the installation of cordova says: + cordova@9.0.0
我尝试过:
npm install external-editor --save
npm WARN cordova@1.0.0 No repository field.
+ external-editor@3.1.0
updated 1 package and audited 6 packages in 0.536s
found 0 vulnerabilities
但是,npm安装没有帮助。这是调用cordova时的输出:
root @ / opt / cordova#科尔多瓦
internal/modules/cjs/loader.js:628
throw err;
^
Error: Cannot find module 'external-editor'
Require stack:
- /usr/local/lib/node_modules/cordova/node_modules/inquirer/lib/prompts/editor.js
- /usr/local/lib/node_modules/cordova/node_modules/inquirer/lib/inquirer.js
- /usr/local/lib/node_modules/cordova/node_modules/insight/lib/index.js
- /usr/local/lib/node_modules/cordova/src/telemetry.js
- /usr/local/lib/node_modules/cordova/src/cli.js
- /usr/local/lib/node_modules/cordova/bin/cordova
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:625:15)
at Function.Module._load (internal/modules/cjs/loader.js:527:27)
at Module.require (internal/modules/cjs/loader.js:683:19)
at require (internal/modules/cjs/helpers.js:16:16)
at Object.<anonymous> (/usr/local/lib/node_modules/cordova/node_modules/inquirer/lib/prompts/editor.js:7:17)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:643:32)
at Function.Module._load (internal/modules/cjs/loader.js:556:12)
at Module.require (internal/modules/cjs/loader.js:683:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'/usr/local/lib/node_modules/cordova/node_modules/inquirer/lib/prompts/editor.js',
'/usr/local/lib/node_modules/cordova/node_modules/inquirer/lib/inquirer.js',
'/usr/local/lib/node_modules/cordova/node_modules/insight/lib/index.js',
'/usr/local/lib/node_modules/cordova/src/telemetry.js',
'/usr/local/lib/node_modules/cordova/src/cli.js',
'/usr/local/lib/node_modules/cordova/bin/cordova'
]
}
查看editor.js:
head /usr/local/lib/node_modules/cordova/node_modules/inquirer/lib/prompts/editor.js
'use strict';
/**
* `editor` type prompt
*/
var chalk = require('chalk');
var editAsync = require('external-editor').editAsync;
var Base = require('./base');
var observe = require('../utils/events');
var { Subject } = require('rxjs');
我也尝试过重新安装cordova,但结果相同。
这是什么原因? -问候
答案 0 :(得分:0)
我发现了问题。我用以下方法安装了缺少的外部编辑器:
npm install external-editor --save
但这不会将其安装在Cordova的范围内。
我必须使用-g选项在全球范围内进行安装。
npm install -g external-editor
+ external-editor@3.1.0
added 6 packages from 11 contributors in 0.349s
测试科尔多瓦
# cordova -v
9.0.0 (cordova-lib@9.0.1)
已解决。