NativeScript CLI 安装错误

Posted

技术标签:

【中文标题】NativeScript CLI 安装错误【英文标题】:NativeScript CLI installation Error 【发布时间】:2018-10-26 20:05:39 【问题描述】:

我正在尝试学习 NativeScript。我已完成以下步骤在我的 windows 8.1 Pro 64 位机器上安装 NativeScript:

    在 D 盘上安装了 node.js (node-v8.11.2-x64) 在 D 盘上安装了 Visual Studio Code (VSCodeSetup-x64-1.23.1) 在 D 盘上安装了 Git (Git-2.17.0-64-bit) 在 D 盘上安装了 android Studio (android-studio-ide-173.4720617-windows) 使用以下命令安装 NativeScript:npm install -g nativescript。

我在第 5 步收到以下错误:

C:\Users\UserName>npm install -g nativescript
nativescript@4.0.1 preuninstall C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript

node preuninstall.js

Failed to complete all pre-uninstall steps.

C:\Users\UserName\AppData\Roaming\npm\tns -> C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\bin\tns

C:\Users\UserName\AppData\Roaming\npm\nativescript -> C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\bin\tns

> nativescript@4.0.1 postinstall C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript

> node postinstall.js

RangeError: Maximum call stack size exceeded

at normalizeStringWin32 (path.js:33:30)

at Object.resolve (path.js:328:20)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:68:14)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:77:24)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules\nativescript\node_modules\fsevents):

    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted "os":"darwin","arch":"any" (current: "os":"win32","arch":"x64")

+ nativescript@4.0.1

updated 1 package in 18.244s

当我运行 tns doctor 命令时,我收到以下信息:

> C:\Users\UserName>tns doctor
> 
> RangeError: Maximum call stack size exceeded
> 
>     at normalizeStringWin32 (path.js:33:30)
> 
>     at Object.resolve (path.js:328:20)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:68:14)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:77:24)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)
> 
>     at sync (C:\Users\UserName\AppData\Roaming\npm\node_modules\nativescript\node_modules\mkdirp\index.js:78:17)

我也尝试卸载 NativeScript,但它仍然卡在 resolveWithNewModule 上,见下文:

C:\Users\UserName>npm uninstall -g  nativescript

[  ................] / loadDep:readdirp: sill resolveWithNewModule xcode@0.8.0 checking installable status

我的问题是:

    如何修复 NativeScript 的安装错误? 如果我需要卸载 NativeScript,我该怎么做? 哪个目录 NativeScript 是通过安装命令安装的,我可以将它安装在 d 盘上吗?

【问题讨论】:

你的机器有多少内存? 【参考方案1】:

安装过程似乎内存不足。 在运行安装之前尝试运行此命令:

node --max-old-space-size=8192

根据您机器上安装的 RAM 设置最后一个数字(2048、4096 ecc)

【讨论】:

我怀疑是内存问题,我有 32GB 的 RAM。不管怎样,我尝试了你的建议,但仍然没有运气【参考方案2】:

@Aaron Ullal 是对的,原因主要是 NodeJS 堆(V8 中的内存使用)耗尽了可用内存,并不是因为您没有剩余内存,这是 node exec 配置中包含的硬停止。

你可以添加一个标志来增加堆大小

NODE_OPTIONS="--max-old-space-size=4096" node

您可以找到更多信息here。 请使用搜索工具查找类似的错误或已回答的问题

【讨论】:

以上是关于NativeScript CLI 安装错误的主要内容,如果未能解决你的问题,请参考以下文章

Nativescript ios:CLI 停止。错误:“来源太多”

用于 vue-cli-template 的 nativescript-vue 音频模块

npm install -g @vue/cli @vue/cli-init 错误

如何将 NativeScript 与 Angular CLI 集成

为啥我的 Nativescript-vue 发布 apk 出现错误

Windows PowerShell在Windows 10上安装NativeScript