找不到模块'内部/错误'离子的

时间:2017-09-19 09:00:45

标签: node.js cordova ionic-framework hybrid-mobile-app

我试图创建新的离子项目。然后它显示以下错误。 我已删除nodejsnpmionic并重新安装。但同样的错误再次显示。 Terminal

错误

Error: Cannot find module 'internal/errors'
    at Function.Module._resolveFilename (module.js:527:15)
    at Function.Module._load (module.js:476:23)
    at Module.require (module.js:568:17)
    at require (internal/module.js:11:18)
    at evalmachine.<anonymous>:36:16
    at Object.<anonymous> (/usr/local/lib/node_modules/ionic/node_modules/unzip/node_modules/fstream/node_modules/graceful-fs/fs.js:11:1)
    at Module._compile (module.js:624:30)
    at Object.Module._extensions..js (module.js:635:10)
    at Module.load (module.js:545:32)
    at tryModuleLoad (module.js:508:12)

Cannot find module 'internal/errors' (CLI v1.7.16)

我的系统信息

Cordova CLI: 7.0.1
Ionic CLI Version: 1.7.16
Ionic App Lib Version: 0.7.3
OS: Distributor ID: Ubuntu Description: Ubuntu 16.04.3 LTS 
Node Version: v8.5.0

3 个答案:

答案 0 :(得分:1)

我能够进入节点&#34; LTS&#34;带有nvm的6.4.11版本可以让事情发挥作用。

$ VER=v6.11.4
$ nvm install $VER
$ nvm alias default $VER
$ nvm use $VER
### now, sadly, we re-install everything to avoid incompatibilities and other issues.
$ mv node_modules node_modules.old
$ mv *.lock node_modules.old
$ npm install
$ npm -g install ionic@1.7 cordova@6 gulp
### the next two may not be needed but it's mostly harmless and maybe helpful 
$ ionic platform remove android
$ ionic platform add android

现在运行相同的命令时,如果您现在幸运,我们会收到警告:

 ✗ (node:15169) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.

这不是崩溃......不,它不是崩溃......

最后,不要害怕,在此之后还会有其他令人兴奋的修复和无比的期待。通常那些应该在其他问题中,但因为你可能也需要这些答案,我在这里记录了它们。

您可能还需要添加

ext.cdvCompileSdkVersion = 26
android {
   buildToolsVersion "26.0.1"
   packagingOptions {
      exclude 'META-INF/LICENSE'
   }
}

以某种方式建立你的构建。一种方法是将其放入名为build-extras.gradle的文件中,该文件位于platforms/android

  

未来读者注意事项(2018+):没有什么神奇之处&#34; 26&#34; - 这是本文撰写时当前最高的sdk版本号。如果上述值不适合您,您应该使用当前版本的明天世界。

但是,由于platforms/中的任何内容都可能被cordova platform add/remove模式中的cordova删除,为了确保我保留它,我将其放在该文件夹之外。然后在我的构建中,这只是一个shell脚本,我这样做:

cp -up misc/build-extras.gradle platforms/android
ionic build android

现在我终于恢复了生意。

答案 1 :(得分:0)

您可能需要在这些命令前添加“sudo”以全局安装实用程序。

$ sudo npm install
$ npm install -g ionic cordova

答案 2 :(得分:0)

我也有这个问题 我安装了离子的最后一个版本并在终端:

ionic start myproject --type ionic1

此命令创建项目