这似乎是一个半常见的错误,但我不清楚是什么原因造成的。我想知道是什么导致了这个错误以及如何解决它。
使用 NVM,我安装了 Node @latest(版本 17.4.0),它安装了 npm 的匹配最新版本(v8.3.1)。
PS C:\myRepo> node -v
v17.4.0
PS C:\myRepo> npm -v
8.3.1
PS C:\myRepo> nvm list
* 17.4.0 (Currently using 64-bit executable)
17.0.0
15.6.0
14.18.3
14.15.4
12.20.1
Run Code Online (Sandbox Code Playgroud)
然后我从 npm 安装一个包依赖项,无论包名称如何,它都会给我一个错误:
PS C:\myRepo> npm install -g npm
npm ERR! Unexpected token '.'
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\yodama\AppData\Local\npm-cache\_logs\2022-01-25T16_38_44_607Z-debug-0.log
Run Code Online (Sandbox Code Playgroud)
我们可以看到完整的调试日志:
0 verbose cli [
0 verbose cli 'C:\\Program Files\\nodejs\\node.exe',
0 verbose cli 'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js',
0 verbose cli …
Run Code Online (Sandbox Code Playgroud) 在系统中有一个nodejs
,通过安装nvm
.该命令未运行npm
.控制台是Oh my zsh
My Cloud 9工作区使用Node.Js 0.10运行.如何将其更新到最新版本的Node.Js(今天是0.12.4)?
我正在尝试使用apt-get安装Node.Js,但我总是会得到0.10版本.
更新:最新版本的Cloud 9工作区现已预安装4.1.1版
我刚刚使用nvm和angular/cli(12.2)安装了最新版本的node(16.8)。
但当我跑步时
ng --version
它显示以下内容:
警告:Angular 不支持当前版本的 Node (16.8.0)。
我尝试降级节点并安装节点 14.15,但ng不再工作。
我应该忽略警告并使用节点 16吗?
为什么 ng不能与节点 14.15一起使用?
PS:我使用nvm来管理不同的节点版本
我搜索了Stack Overflow和GitHub(节点和nvm)的答案,但无济于事.
在一些repos(例如GitHub的Atom文本编辑器)中,我遇到了一个.node-version
文件.它似乎类似于.ruby-version
与任何Ruby版本管理器一起使用的标准文件,以便为项目正确设置当前版本的Ruby.
但据我从其文档中可以看出,nvm(节点版本管理器)仅尊重.nvmrc
文件 - 它没有提及更通用的.node-version
文件.并且没有提到.node-version
节点的文档(我不希望有,因为它没有提供开箱即用的版本管理器).我不知道任何其他节点版本管理器在大量使用.
所以我的问题是,是什么.node-version
?实际使用哪些工具?它只是一个别名.nvmrc
,还是我在这里遗漏了什么?
在路上设置Node.js
有NVM
,我用的时候偶然发现了一个错误Yeoman
.我收到了错误
Cannot find module 'yeoman-generator'
Run Code Online (Sandbox Code Playgroud)
经过一番研究后,我在StackOverflow上发现了这篇文章,这也是我的问题所在.现在我尝试这样做了,但我遇到的问题是,我想在系统中使用不同版本的Node.js并使用NVM.如果Node.js版本在NVM的帮助下发生变化,现在可以动态更改$ NODE_PATH吗?因为我的$ NODE_PATH目前是空的(这导致了问题).
$ which node
/Users/dschmidt/.nvm/v0.10.35/bin/node
$ which npm
/Users/dschmidt/.nvm/v0.10.35/bin/npm
$ echo $NODE_PATH
[empty]
Run Code Online (Sandbox Code Playgroud)
对于我得到的每一个答案都会很高兴.我在网上搜索了这个,但找不到一篇关于此的帖子.
我正在尝试降级我的节点版本
我跑了:
npm install nvm
Run Code Online (Sandbox Code Playgroud)
我将bin文件夹导出到我的Windows路径变量,
C:\Program Files (x86)\nodejs\node_modules\npm\bin
Run Code Online (Sandbox Code Playgroud)
但我仍然得到:
'nvm'不被识别为内部或外部命令.
我应该在路径变量中添加另一条路径吗?
我是React Native的新手.我曾经react-native init XXX
创建过一个新项目.当启动xcodeproj时,我收到一条错误消息:
const setupEnvScript = /^win/.test(process.platform)
^^^^^
SyntaxError: Use of const in strict mode.
at Module._compile (module.js:439:25)
at Module._extensions..js (module.js:474:10)
at Object.require.extensions.(anonymous function) [as .js] (/Users/allanhahaha/Documents/Seat/getseat/SeatApp/node_modules/react-native/node_modules/babel-core/lib/api/register/node.js:214:7)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/allanhahaha/Documents/Seat/getseat/SeatApp/node_modules/react-native/cli.js:15:18)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
Run Code Online (Sandbox Code Playgroud)
根据我的研究,这是一个node.js版本问题:我应该使用v.4.0 +.
我正在使用NVM来管理我的node.js版本.在常规终端窗口中,我有这个:
$ node --version
v5.1.0
Run Code Online (Sandbox Code Playgroud)
但是在xcode运行启动shell脚本时,我看到它使用的是另一个版本v0.10.40
,并且xcode也不知道nvm
命令.
问题是,我应该如何配置我的Mac,以便xcode可以获取我使用nvm设置的相同版本?
谢谢!
更新:我想source
我~/.bash_profile
在由Xcode中执行的shell脚本,但仍然没有解决问题.
我在OSX上使用NVM作为我的节点版本管理器,除了它在我的IDE中产生多个问题之外,这很棒.我正在使用Sublime Text,我使用过的大多数插件都在寻找nodejs,/usr/local/bin
因为我使用NVM节点显然在该位置不可用,而是可以在/Users/${User}/.nvm/${NodeVersion}/bin/node
.
我可以选择在该插件的配置中更新nodejs的路径,但是当我安装另一个插件时,我必须做同样的事情.同样适用于使用CoffeeScript,LESScss等.
此外,当我通过NVM更新我的节点版本时,我必须再次更新所有配置中的路径.在尝试为我解决问题时,NVM基本上创造了更多问题.
更新:
很长一段时间后,我终于使用isaacs辉煌的解决方案 - nave解决了这个问题.这个nave usemain stable
命令,足以让你理解你的情绪:)
我有NVM 0.30.1并用它在Fedora 22上安装node.js v5.4.0(带NPM 3.5.4).当我运行时npm update -g
,我收到以下警告:
npm WARN EBUNDLEOVERRIDE Replacing bundled npm > init-package-json with new installed version
npm WARN EBUNDLEOVERRIDE Replacing bundled npm > node-gyp with new installed version
npm WARN EBUNDLEOVERRIDE Replacing bundled npm > npm-install-checks with new installed version
npm WARN EBUNDLEOVERRIDE Replacing bundled npm > npmlog with new installed version
npm WARN EBUNDLEOVERRIDE Replacing bundled npm > read-package-json with new installed version
Run Code Online (Sandbox Code Playgroud)
之后,当我运行npm时,我收到此错误:
module.js:328
throw err;
^
Error: Cannot find module 'npmlog'
at …
Run Code Online (Sandbox Code Playgroud) nvm ×10
node.js ×9
npm ×5
javascript ×3
angular ×1
angular-cli ×1
cloud9-ide ×1
macos ×1
oh-my-zsh ×1
react-native ×1
sublimetext2 ×1
terminal ×1
windows ×1
xcode ×1